在一台机器上装nginx 和apache
/etc/hosts中
192.168.200.156 www.a.com #本机ip
127.0.0.1 www.shenge1.com
nginx域名:www.a.com(端口默认80)
apache域名:www.shenge1.com(端口把默认80该为8080)
nginx配置文件中
http{
...
upstream backend{ #这里配置上游服务器的地址(本例指apache服务器)
server www.shenge1.com:8080;
...
}
server{
listen 80;
server_name www.a.com;
location / {
root /www/www.a.com;
index index.html;
}
...
location ~\.php$ {#匹配.php文件,这里会根据/etc/httpd/conf/httpd.conf配置文件里的
#DocumentRoot "/var/www/html"将/var/www/html作为apache的资源
#跟目录,php等文件放此目录下就好了.
proxy_pass http://backend; #这里设置上游服务器(实际上backend指的是一群服务器地址)
}
}
..
}
apache /etc/httpd/conf/httpd.conf
listen 8080
在/www/www.a.com/(nginx服务器的资源) 下的index.html 内容为
<html>
nginx
</html>
/var/www/html/(apache服务器的资源)下的index.php内容为
<?php>
phpinfo()
<?>
开启nginx
nginx
开启apache
service httpd start
单独的nginx只能解析静态界面(即html文件),而apache中带了php模块能够
解析php文件,成生很多静态的html界面,然后返回给nginx,再返回给客户端浏览器
首先在浏览器中访问www.a.com出现界面显示nginx则nginx正常启动
然后www.a.com/index.php ,如果只是单独的nginx是没法显示
出来的,如果按照我们的配置将nginx作反向代理通过apache就能解析,此时
如果能解析,说明反向代理没有问题.
本文出自 “12208412” 博客,请务必保留此出处http://12218412.blog.51cto.com/12208412/1866825
原文地址:http://12218412.blog.51cto.com/12208412/1866825