熊艳芬 發表於 2023-7-13 00:00:00

CentOS 6.5 web服务器apache的安装与基本设置

<p>
        centos 6.5系统镜像有两个,安装系统只用到第一个镜像即centos-6.5-i386-bin-dvd1.iso(32位)或者centos-6.5-x86_64-bin-dvd1.iso(64位),第二个镜像是系统自带软件安装包;对于新手不建议安装最小版本,很多基本的工具都需要安装。</p>
<p>
        具体的也可以参考这篇文章:</p>
<p>
        centos 6.8 服务器系统安装配置图解教程</p>
<p>
        <strong>使用yum安装apache</strong></p>
<p>
        <code>yum install httpd -y</code></p>
<p>
        apache web 服务器目录的文件</p>
<p>
         </p>
<table><tbody>
<tr>
<td colspan="2">
                                <p>
                                        目录</p>
                        </td>
                        <td colspan="2">
                                <p>
                                        描述</p>
                        </td>
                </tr>
<tr>
<td rowspan="4">
                                <p>
                                        web站点目录</p>
                        </td>
                        <td colspan="2">
                                <p>
                                        /var/www</p>
                        </td>
                        <td>
                                <p>
                                        apache web站点文件的目录</p>
                        </td>
                </tr>
<tr>
<td colspan="2">
                                <p>
                                        /var/www/html</p>
                        </td>
                        <td>
                                <p>
                                        存放web站点的web文件</p>
                        </td>
                </tr>
<tr>
<td colspan="2">
                                <p>
                                        /var/www/cgi-bin</p>
                        </td>
                        <td>
                                <p>
                                        存放cgi程序文件</p>
                        </td>
                </tr>
<tr>
<td colspan="2">
                                <p>
                                        /var/www/html/manual</p>
                        </td>
                        <td>
                                <p>
                                        存放服务器手册</p>
                        </td>
                </tr>
<tr>
<td rowspan="3">
                                <p>
                                        配置文件</p>
                        </td>
                        <td colspan="2">
                                <p>
                                        .htaccess</p>
                        </td>
                        <td>
                                <p>
                                        基于目录的配置文件。.htaccess文件包含对它所在目录中文件的访问控制指令</p>
                        </td>
                </tr>
<tr>
<td colspan="2">
                                <p>
                                        /etc/httpd/conf</p>
                        </td>
                        <td>
                                <p>
                                        存放配置文件</p>
                        </td>
                </tr>
<tr>
<td colspan="2">
                                <p>
                                        /etc/httpd/conf/httpd.conf</p>
                        </td>
                        <td>
                                <p>
                                        apache web 服务器主配置文件</p>
                        </td>
                </tr>
<tr>
<td rowspan="2">
                                <p>
                                        启动脚本</p>
                        </td>
                        <td colspan="2">
                                <p>
                                        /etc/rc.d/init.d/httpd</p>
                        </td>
                        <td>
                                <p>
                                        存放web服务器守护进程的启动脚本</p>
                        </td>
                </tr>
<tr>
<td colspan="2">
                                <p>
                                        /etc/rc.d/rc3.d/s85httpd</p>
                        </td>
                        <td>
                                <p>
                                        存放将/etc/rc3.d目录连接到/etc/rc.d/init.d目录中的启动脚本</p>
                        </td>
                </tr>
<tr>
<td rowspan="4">
                                <p>
                                        应用文件</p>
                        </td>
                        <td colspan="2">
                                <p>
                                        /usr/sbin</p>
                        </td>
                        <td>
                                <p>
                                        存放apache web 服务器程序文件和使用程序</p>
                        </td>
                </tr>
<tr>
<td colspan="2">
                                 </td>
                        <td>
                                 </td>
                </tr>
<tr>
<td colspan="2">
                                <p>
                                         /usr/doc</p>
                        </td>
                        <td>
                                <p>
                                        存放apache web 服务器文件</p>
                        </td>
                </tr>
<tr>
<td colspan="2">
                                <p>
                                        /usr/log/http</p>
                        </td>
                        <td>
                                <p>
                                        存放apache日志文件</p>
                        </td>
                </tr>
</tbody></table>
<p>
         </p>
<p>
        安装完毕后,可以使用如下命令来查看apache的一些相关安装信息;</p>
<p>
        <img style="max-width:100%!important;height:auto!important;"title="CentOS 6.5 web服务器apache的安装与基本设置" alt="CentOS 6.5 web服务器apache的安装与基本设置" src="https://zhuji.jb51.net/uploads/img/202305/2fbdc2c93902548c10f1f2ac00a2ee6b.jpg"></p>
<p>
        <span><span>对</span>apache<span>的配置文件进行语法检查,可以使用以下命令</span></span></p>
<p>
        <img style="max-width:100%!important;height:auto!important;"title="CentOS 6.5 web服务器apache的安装与基本设置" alt="CentOS 6.5 web服务器apache的安装与基本设置" src="https://zhuji.jb51.net/uploads/img/202305/b0b6413ff003d203f12cb365fc9aa204.jpg"></p>
<p>
        <span><span>若要查看</span>apache<span>编译配置参数,则可以使用以下命令;</span></span></p>
<p>
        <span>apachectl  -v</span></p>
<p>
        <img style="max-width:100%!important;height:auto!important;"title="CentOS 6.5 web服务器apache的安装与基本设置" alt="CentOS 6.5 web服务器apache的安装与基本设置" src="https://zhuji.jb51.net/uploads/img/202305/5879b4b7622592836f417178dc0df9b2.jpg"></p>
<p>
        <span><span>还可以使用以下命令查看</span>apache<span>的编辑模块</span></span></p>
<p>
        <img style="max-width:100%!important;height:auto!important;"title="CentOS 6.5 web服务器apache的安装与基本设置" alt="CentOS 6.5 web服务器apache的安装与基本设置" src="https://zhuji.jb51.net/uploads/img/202305/124722fd3646e9f51272947a2e21117c.jpg"></p>
<p>
        重启apache服务</p>
<p>
        <img style="max-width:100%!important;height:auto!important;"title="CentOS 6.5 web服务器apache的安装与基本设置" alt="CentOS 6.5 web服务器apache的安装与基本设置" src="https://zhuji.jb51.net/uploads/img/202305/133c9173dd4209821735249d58215bc8.jpg"></p>
<p>
        <strong>apache 服务器的基本配置</strong></p>
<p>
        对apache 服务器的配置,主要是通过编译apache的主配置文件httpd.conf来实现的。需要注意的是修改httpd.conf文件后,必须重新启动httpd服务,所做的修改才能够生效。<br>
        httpd.conf文件的位置随着安装方式的不同而不同,如果使用rpm的方式安装,则该文件通常存放在/etc/httpd/conf目录下;如果使用编译源代码的方式安装,则该文件通常存放在apache安装目录的conf子目录下。由于httpd.conf是一个文本文件,因此可以使用任何文本编辑器(例如vi)对其进行编辑。<br>
        httpd.conf配置文件主要由三个部分组成,分别是全局环境设置(section 1:global environment)、主服务器配置(section 2:'main' server configuration)和虚拟主机设置<br>
        (section 3: vitual hosts).<br>
        每个部分都有相应的配置语句,所有配置语句的语法均为;<br>
        配置参数名称(选项) 参数值<br>
        尽管配置语句可以放在文件中的任何位置,但为了使http.conf的配置语句除了选择的参数值外,所有的选项指令均不区分大小写。可以在每一行语句前用#表示注释。<br>
         </p>
<p>
        <strong>设置根目录路径</strong></p>
<p>
        apache服务器根目录是指apache存放配置文件和日志文件的目录,配置参数为serverroot,<br>
        默认情况下根目录位于“/etc/httpd”.根目录下一般包含conf和logs子目录。命令如下:<br>
        serverroot “/etc/httpd”</p>
<p>
        <strong>设置监听ip地址及端口号</strong><br>
        apache默认在本机所以可用ip地址的tcp80端口上监听客户端的请求,命令如下:<br>
        listen 80<br>
        可以使用listen 语句在多个地址和端口上监听客户端请求。如设置服务器指监听来自12.34.56.78的80端口和192.168.1.144的8080端口的请求,可以使用以下配置语句:<br>
        listen 12.34.56.78:80<br>
        listen 192.168.1.144:8080 </p>
<p>
        <strong>设置系统管理员e-mail</strong><br>
        当客户端访问服务器发生错误时,服务器通常会向客户端返回错误提示网页,为了便于排除错误,这个网页中通常包含有系统管理员的e-mail地址。可以使用配置参数serveradmin设置管理员的e-mail,例如:<br>
        serveradmin admin@your-domain.com<br>
         <br><strong>设置服务器主机名称</strong><br>
        为了方便apache识别服务器自身的信息,可以使用配置参数servername来设置服务器的主机名称。如果服务器有域名,则填入服务器域名:如果没有域名则填入服务器的ip地址。命令如下:<br>
        servername www.example.com:80<br>
        #servername 192.168.0.47:80</p>
<p>
        <strong>设置主目录路径</strong><br>
        apache服务器主目录默认路径的配置参数为documentroot,其位于“/var/www/html”下,<br>
        需要发布的网页一般都放在这个目录下。但为了方便管理和使用,也可以修改主目录路径,将其改为其他目录。如:<br>
        documentroot “/var/www/html”<br>
        例如,可以通过修改配置参数documentroot的参数值将apache服务器主目录路径设为“/home/www”<br>
        documentroot “/home/www”</p>
<p>
        <strong>设置默认文件</strong><br>
        默认文件是指在web浏览器中输入web站点的ip地址或域名即显示出来的web页面。也就是当url中没有指定要访问的页面时,web浏览器中默认显示的页面,即通常所说的主页,在一般情况下,apache的默认文件为index.html,默认文件名由directoryindex配置参数定义。用户可以将directoryindex的参数值改为其他文件:<br>
        directoryindex index.html index.html.var<br>
        如果设置多个默认文件,各个文件名之间必须用空格分隔。apache会根据文件名的先后顺序查找在“主目录”路径下的文件名,如果能找到第一个文件则调用第一个文件,否则在寻找并调用第二个文件,依次类推。<br>
        例如,若要添加index.html 和index.jsp作为默认文件,则可以做如下修改:<br>
        directoryindex index.html index.htm index.jsp index.html .var<br>
         <br><strong>配置目录权限</strong><br>
        在httpd.conf文件中,使用&lt;directory&gt;可以灵活的设置目录的权限。&lt;directory&gt;是容器语句,<br>
        必须成对出现。&lt;directory目录路径&gt;和&lt;/directory&gt;之间封装了设置目录权限的语句,这些语句仅对呗设置的目录及其子目录起作用。以下是一个在httpd.conf文件中使用&lt;directory&gt;设置目录权限的例子:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterplain" id="highlighter_992181">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="plain plain">&lt;directory “/var/www/icons”&gt;</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="plain plain">options indexes multiviews</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="plain plain">allowoverride none</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="plain plain">order allow,deny</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="plain plain">allow from all</code>
</div>
                                                                <div class="line number6 index5 alt1">
                                                                        <code class="plain plain">&lt;/directory&gt;</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        <strong>定义目录特性选项</strong><br>
        在&lt;directory&gt;语句中,可以使用options来定义目录的特性,也就是设置某个目录使用哪些特性。这些特性包括indexes、multiviews和execcgl等。<br>
        indexes<br>
        该特性表面目录允许“目录浏览”,当客户仅指定要访问的目录,当没有指定具体要访问目录下的哪个文件,而该目录下又不仅存在默认文件时,apache将以超文本形式返回该目录中的文件和子目录的列表。<br>
          </p>
<p>
        muitiviews<br>
        该特性<br>
        表明目录允许内容智能匹配。这一特性具有一定的智能。当客户需要访问的对象在目录中不存在时,apache将根据客户所访问的对象的内容返回智能处理后的结果。例如,当客户访问“http://192.168.0.2/icons/a”时,apache会查找icons目录下的所有a.*文件。假如该目录下存在a.gif文件,则apache将返回a.gif文件至客户端,而不会返回错误信息。<br>
         <br>
        all<br>
        all包含了除multiviews之外的所有特性。当&lt;directory&gt;容器中没有options时,默认值为all。<br>
         <br>
        execcgl<br>
        该特性表明允许在该目录下执行cgl脚本。<br>
         <br>
        followsymlinks<br>
        该特性表明允许在该目录下使用符号链接。<br>
         <br>
        .htaccess文件<br>
        在httpd.conf文件中,配置参数accessfilename的默认值为.htaccess。因此,可以通过.htaccess文件(访问控制文件)<br><strong>设置目录的权限。</strong><br>
        accessfilename  .htaccess<br>
        配置参数allowoverride可以指定目录的.htaccess文件中指令的类型。这些类型包括all、none与options、filelnfo、authconfig、limit的任意组合。<br>
        基于安全和效率的考虑,虽然可以通过.htaccess文件来设置目录的访问权限,但应尽可能地避免使用.htaccess文件。因此,一般将allowoverride设置为none,即禁止使用.htaccess文件中的设置:<br>
        allowoverride none<br>
        当allowoverride参数值为all时,.htaccess文件可以覆盖任何以前的配置。<br>
         <br><strong>实现访问控制</strong><br>
        目录的访问控制可以通过allow和deny语句实现,order选项就用于定义默认的访问权限以及allow和deny语句的处理顺序。allow语句之后显示被允许访问该目录的主机名列表,而deny语句后则是被拒绝访问的主机名列表。<br>
        allow和deny语句可以针对客户机的域名或ip地址进行设置,以觉得哪些客户机能够访问服务器。order语句通常的设置为以下两种情况下之一;<br>
        order  allow,deny或 order deny,allow<br>
        allow,deny:默认禁止所有客户机的访问,且allow语句在deny语句之前被匹配。如果某条件即匹配deny语句又匹配allow语句,则deny语句起作用(由于deny语句覆盖了allow语句)<br>
        deny,allow默认允许所有客户机访问,且deny语句在allow语句之前被匹配.如果某条件允许即匹配deny语句又匹配allow语句,则allow语句起作用(由于allow语句覆盖了deny语句)。<br>
        下面举例来说明order、allow和deny语句的使用方法。</p>
<p>
        <strong>以下语句表明允许所有客户机的访问:</strong></p>
<p>
        order allow,deny<br>
        allow from all<br>
        以下语句表明除了来自www.deny.com和ip地址为192.168.10.147的客户机外,允许所有客户机的访问;<br>
        order deny,allow<br>
        deny from www.deny.com<br>
        deny from 192.168.10.147<br>
        以下语句表明仅允许来自192.168.10ip段的客户机访问<br>
        order allow,deny<br>
        allow from 192.168.10<br>
        以下语句表明仅允许来自网络192.168.10.0/24客户机的访问,但ip地址为192.168.10.147的客户机除外<br>
        order  allow,deny<br>
        allow from 192.168.10.0/24<br>
        deny from 192.168.10.147</p>
<p>
        原文链接:http://10086lhc.blog.51cto.com/10854889/1883862</p>
頁: [1]
查看完整版本: CentOS 6.5 web服务器apache的安装与基本设置