linux lnmp环境下 安装apache教程
源码安装 apr ,apr-util 安装apache要用
<pre>
wget http://mirrors.cnnic.cn/apache/apr/apr-1.5.2.tar.gz
tar zxvf apr-1.5.2.tar.gz
cd apr-1.5.2
./configure --prefix=/usr/local/apr
make & make install
wget http://mirrors.cnnic.cn/apache/apr/apr-util-1.5.4.tar.gz
tar zxvf apr-util-1.5.4.tar.gz
cd apr-util-1.5.4
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make & make install
</pre>
安装apache了
<pre>
wget http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.25.tar.gz
tar zxvf httpd-2.4.25.tar.gz
cd httpd-2.4.25
./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
make & make install
</pre>
<pre>
修改apache配置 cd conf/ vi httpd.conf 把80端口改成其他端口 避免冲突
Listen 8008
ServerName 127.0.0.1:8008
#启动
Apache:/usr/local/apache/bin/apachectl start
</pre>
<pre>
#设置默认首页
DirectoryIndex index.php index.html
</pre>
现在PHP是解析不了所以要进行如下操作 这里我不用mod_php 用他到时候还得重新解析PHP 所以采用php-fpm 简单快捷 更重要性能更优越!
再说说apache这边需要的一点设置。由于我是从mod_php到php-fpm的,所以之前httpd.conf中的这几行需要注解掉:
<pre>
LoadModule php5_module modules/libphp5.so
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
</pre>
然后去掉mod_proxy.so和mod_proxy_fcgi.so之前的注解,确保他们被apache加载。
另外设置下根目录
<pre>
DocumentRoot "/usr/local/apache/htdocs"
<Directory "/usr/local/apache/htdocs">
</pre>
在Apache httpd 2.4以后已经专门有一个模块针对FastCGI的实现,此模块为mod_proxy_fcgi.so,它其实是作为mod_proxy.so模块的扩充,因此,这两个模块都要加载
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
如果php-fpm使用的是TCP socket,那么在httpd.conf末尾加上:
<pre>
#9000端口号别写错了
<FilesMatch \.php$>
SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>
</pre>
如果用的是unix socket,那么httpd.conf末尾加上:
<pre>
#/dev/shm/php-cgi.sock路径别写错了
<Proxy "unix:/dev/shm/php-cgi.sock|fcgi://php-fpm">
ProxySet disablereuse=off
</Proxy>
<FilesMatch \.php$>
SetHandler proxy:fcgi://php-fpm
</FilesMatch>
至此在apapche上
</pre>
<pre>
#重启apache
/usr/local/apache/bin/apachectl restart
</pre>
<pre>
#看phpinfo
$_SERVER['SERVER_SOFTWARE'] Apache/2.4.25 (Unix)
</pre>