apache部署

这里的apache部署以httpd-2.2.34版本为例

切换到工具目录下载apache:wget  http://mirror.bit.edu.cn/apache/httpd/httpd-2.2.34.tar.gz

下载好解压,进入解压包目录进行编译安装

[root@lamp01 httpd-2.2.34]# ./configure --prefix=/application/apache2.2.34 --enable-modules=most --enable-deflate  --enable-expires --enable-headers  --enable-rewrite  --enable-so     --with-mpm=worker

在configure时会报一个错误如下:

checking for zlib location... not found
checking whether to enable mod_deflate... configure: error: mod_deflate has been requested but can not be built due to prerequisite failures

说明添加--enable-deflate压缩功能的话需要先安装zlib包:

[root@lamp01 httpd-2.2.34]# yum install zlib-devel  -y

安装好这个包后再configure就正常了

然后make  && make install 

安装成功后做软连接

[root@lamp01 httpd-2.2.34]# ln -s /application/apache2.2.34/ /application/apache

检查apache配置语法并启动apache服务

[root@lamp01 ~]# /application/apache/bin/apachectl -t

[root@lamp01 ~]# /application/apache/bin/apachectl start

检查apache是否成功运行:

[root@lamp01 ~]# lsof  -i  :80
COMMAND   PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
httpd   54460   root    4u  IPv6  60019      0t0  TCP *:http (LISTEN)
httpd   54462 daemon    4u  IPv6  60019      0t0  TCP *:http (LISTEN)
httpd   54463 daemon    4u  IPv6  60019      0t0  TCP *:http (LISTEN)
httpd   54464 daemon    4u  IPv6  60019      0t0  TCP *:http (LISTEN)


[root@lamp01 ~]# netstat -lntup|grep httpd
tcp        0      0 :::80                       :::*                        LISTEN      54460/httpd   


[root@lamp01 ~]# ps -ef |grep httpd
root      54460      1  0 14:10 ?        00:00:00 /application/apache2.2.34/binhttpd -k start
daemon    54461  54460  0 14:10 ?        00:00:00 /application/apache2.2.34/binhttpd -k start
daemon    54462  54460  0 14:10 ?        00:00:00 /application/apache2.2.34/binhttpd -k start
daemon    54463  54460  0 14:10 ?        00:00:00 /application/apache2.2.34/binhttpd -k start
daemon    54464  54460  0 14:10 ?        00:00:00 /application/apache2.2.34/binhttpd -k start
root      54564   4350  0 14:12 pts/1    00:00:00 grep --color=auto httpd  

最后在客户端的浏览器中输入这个apache主机的ip地址,页面显示it  works!说明apache到此安装成功。。。

apache的配置文件为:先将配置文件中的注释和空行去除:[root@lamp01 conf]# egrep -v '#|^$' httpd.conf >httpd.conf.ori

[root@lamp01 conf]# cat  httpd.conf.ori 
ServerRoot "/application/apache2.2.34"
Listen 80
<IfModule !mpm_netware_module>
<IfModule !mpm_winnt_module>
User daemon
Group daemon
</IfModule>
</IfModule>
ServerAdmin you@example.com
DocumentRoot "/application/apache2.2.34/htdocs"
<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>
<Directory "/application/apache2.2.34/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>
<FilesMatch "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy All
</FilesMatch>
ErrorLog "logs/error_log"
LogLevel warn
<IfModule log_config_module>
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common
    <IfModule logio_module>
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>
    CustomLog "logs/access_log" common
</IfModule>
<IfModule alias_module>
    ScriptAlias /cgi-bin/ "/application/apache2.2.34/cgi-bin/"
</IfModule>
<IfModule cgid_module>
</IfModule>
<Directory "/application/apache2.2.34/cgi-bin">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>
DefaultType text/plain
<IfModule headers_module>
    RequestHeader unset Proxy early
</IfModule>
<IfModule mime_module>
    TypesConfig conf/mime.types
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
</IfModule>
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
httpd.conf配置文件

配置文件里默认有Indexes 选项,这个选项表示如果用户访问网站的时候找不到网页的话,网站会以目录的形式展示给用户,这样很不安全,所以这项要取消

在其前面加-

<Directory "/application/apache2.2.34/htdocs">
    Options -Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

  

 

posted @ 2017-09-22 14:19  goser  阅读(348)  评论(0)    收藏  举报