linux下Apache的使用

来源:互联网 发布:下载手机截图软件 编辑:程序博客网 时间:2024/06/16 17:33

 基础知识

1.守护进程
httpd,默认监听端口80号
service httpd start|restart|stop|status

2.配置文件
主配置文件在“/etc/httpd/conf/httpd.conf”,由它来控制Apache服务器的各种功能。
该文件由全局环境设置(Global Environment)、主要的服务设置(Main Server Configuration)、虚拟主机设置(Virtual Hosts)。
(1)全局环境设置
    ServerType inetd|standalone 默认是用standalone,速度快、效率高、节省了启动进程的时间。

    StartServers 指定Apache服务启动时运行的子进程数(注意:只有当ServerType设置为standalone时有效),默认是八个。

    ServerRoot 指定Apache服务器相关文件,保罗配置文件、应用程序、日志文件等,的存放路径,指定的路径应该由根目录写起,默认值是“/etc/httpd/conf”。

    MaxClients 指定Apache服务器可同时响应的来自客户的最大连接请求数,默认是150个。

(2)主要服务设置
    Port 指定Apache的守护进程监听的端口号,默认端口是80.

    ServerAdmin 指定Web服务器管理员的E-mail地址,该E-mail地址出现在由Apache服务器自动生成的错误信息中。

    ServerName 设置Apache服务器名,即客户端访问该Web服务器时使用的域名,也可以设置成IP地址。如果不设置该值,默认为主机名。

    DocumentRoot 指定Web服务器上网页文件存放的位置,web服务器在响应客户端的连接请求时读取该目录下的文件,默认为“/var/www/html”。

    DirectoryIndex 指定客户端访问Web服务器上某个目录下默认显示的文件,可以设置多个文件,Apache服务器显示第一个存在的文件,例如有以下设置:
    DirectoryIndex    index.htm    index.html    /home/usr/index.html
    服务器按以上顺序查找文件,如果没找到,返回客户端“HTTP 404 未找到”错误信息。

    ErrorLog 指定Web服务器上产生的错误日志文件,默认是/var/log/http error_log文件。

(3)虚拟主机配置
    虚拟主机是指在一台web服务器上同时存在多个web站点,他们可以有不同的IP地址或域名,Apache服务器支持的虚拟主机类型包括:
    (A)基于不同域名的虚拟主机,即服务器有一个IP地址,但是它对应有多个不同的CNAME记录,每个CNAME记录对应一个web站点。
    (B)基于不同IP地址的虚拟主机,即服务器有多个IP地址,每个IP地址对应一个web站点。

    基于域名和基于IP地址的虚拟机的配置是相同的,唯一不同的是对于基于域名的虚拟主机,NameVirtualHost语句指定该虚拟域名来自哪个IP地址,而基于不同IP地址的虚拟主机,在NameVirtualHost语句指定本web站点的IP地址。

    虚拟主机由2条主要的配置语句,即“NameVirtualHost”和“VirtualHost”语句,其意义如下:
    (A)NameVirtualHost语句以IP地址或域名的方式,指定哪一台服务器用于响应客户端对虚拟主机的连接请求,推荐使用IP地址方式。虚拟主机的域名在DNS设置中都指向这个IP地址。
    (B)<VirtualHost>和</VirtualHost>语句是虚拟主机设置语句的开始和结束的标志。VirtualHost语句后跟的IP地址和NameVirtualHost语句相同。


Apache配置实例:

要求:
    (1)设置监听端口为80。
    (2)设置域名为www.21php.com,网络管理员的e-mail地址为root@21php.com,网页存放位置/var/www/html,其他设置默认。
    (3)设置一个虚拟域名上图student.21php.com,网页存放位置为/var/www/student/html,网络管理员的e-mail地址为student@21php.com。

配置:
    (1)添加DNS记录。
    再/var/named/21php.com中添加以下内容:
    student         IN CNAME        www.21php.com.
    teacher         IN CNAME        www.21php.com.
    保存退出后:service named restart。
    (2)打开/etc/httpd/conf/httpd.conf修改一下字段:
    ServerAdmin    root@21php.com
    ServerName    www.21php.com
    监听端口默认为80
    Listen 80
    DocumentRoot /var/www/html
    (3)建立虚拟主机,在虚拟主机设置的节点添加以下内容(/etc/httpd/conf/httpd.conf)
    NameVirtualHost 192.168.1.150:80

    <VirtualHost 192.168.1.150:80>
            ServerAdmin root@21php.com
            ServerName www.21php.com
            DocumentRoot /var/www/html
    </VirtualHost>

    NameVirtualHost 192.168.1.150:80

    <VirtualHost 192.168.1.150:80>
            ServerAdmin student@21php.com
            ServerName student.21php.com
            DocumentRoot /var/www/student/html
    </VirtualHost>
    
    注意:虽然www.21php.com不是虚拟服务器,但是必须添加这部分虚拟主机才能被访问。

    #################################################

    NameVirtualHost *:80

    <VirtualHost *:80>
            ServerAdmin ……
            DocumentRoot ……
            ServerName ……
            ErrorLog ……
            CustomLog ……
    </VirtualHost>

原创粉丝点击