Linux Apache 安装过程
下载新版本:
apr-1.4.2.tar.gz(下载网站:http://apr.apache.org/download.cgi)
apr-util-1.3.9.tar.gz(下载网站:http://apr.apache.org/download.cgi)
httpd-2.2.15.tar.gz(下载网站:http://httpd.apache.org/download.cgi)
pcre-8.36(下载命令:wget http://ftp.exim.llorien.org/pcre/pcre-8.36.tar.gz)
安装依赖
(1) 下载apr
http://apr.apache.org/download.cgi
wget https://fossies.org/linux/www/apr-1.5.2.tar.gz
解压进入目录安装tar -zxvf apr-1.5.1.tar.gz
./configure && make && make install
(2) 下载apr-util
wget https://fossies.org/linux/www/apr-util-1.5.4.tar.gz
解压进入目录安装tar -zxvf
./configure --with-apr=/usr/local/apr && make && make install
(3) 安装pcre(安装httpd-2.2.17应该不需要)
http://ftp.exim.llorien.org/pcre/
wget http://ftp.exim.llorien.org/pcre/pcre-8.36.tar.gz
解压进入目录安装tar -zxvf
./configure && make && make install
下载apache
http://httpd.apache.org/download.cgi#apache24
wget https://fossies.org/linux/www/httpd-2.4.23.tar.gz
解压进入目录安装tar -zxvf
./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr/ --with-pcre=/usr/local/pcre-8.36
安装httpd-2.2.17 不需要pcre (和svn 1.6.12 更配)
./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr/ --with-pcre=/usr/local/pcre-8.36 --enable-dav --enable-so
注意查看一下后面三个目录是否存在,正常安装应该都会出现,如果出现不一致,自己做一下调整即可
make && make install
复制Apache启动文件
#cp /usr/local/apache2/bin/apachectl /sbin/
启动Apache
#apachectl start
设置Apache开机自启动
#vi /etc/rc.d/rc.local
增加一行 /sbin/apachectl start
或者将httpd服务添加到ntsysv服务管理工具
#apachectl stop //关闭Apache以免不必要的麻烦
#cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
#vi /etc/rc.d/init.d/httpd
修改为
#!/bin/sh
#
#chkconfig: 345 85 15 //#不能省略,注意空格
#description: httpd for 52lamp 20101016 21:54 //任意字符串
#
......
第二行中345的含义:
# 0 - operation completed successfully
# 1 -
# 2 - usage error
# 3 - httpd could not be started
# 4 - httpd could not be stopped
# 5 - httpd could not be started during a restart
修改有关权限
#cd /etc/rc.d/init.d/
#chmod a+x httpd
#chkconfig --add httpd
#ntsysv
httpd已经在列表中,按F1可以看到刚才编写的服务描述httpd for 52lamp 20101016 21:54。
#apachectl start
#ps -e |grep httpd
23247 ? 00:00:00 httpd
23248 ? 00:00:00 httpd
23249 ? 00:00:00 httpd
23251 ? 00:00:00 httpd
23252 ? 00:00:00 httpd
在浏览器中输入127.0.0.1,看起来一切正常;但是局域网内其他电脑不能访问!
#service iptables stop
如果不想关闭防火墙,放开80端口即可。
#vi /etc/sysconfig/iptables
增加一行-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
#service iptables restart //重启防火墙
iptables的配置文件/etc/sysconfig/iptables不存在怎么办
首先要看一下iptables是否安装了,使用service iptables status或yum info iptables看一下当前状态
如果已安装,运行以下命令:
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
service iptables save
这样就会提示
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
这样就会有iptables的初始配置文件了
重启一下机器试试
查询一下当前 apache的版本:apachectl -v
httpd-2.2.9.tar.gz
编译Apache的configure: error: Size of "void *" is less than size of "long"
移除--with-pcre=/xxx/xxx/pcre选项