您的位置:首页 > 运维架构 > 反向代理

nginx反向代理和负载均衡

2016-10-28 16:17 85 查看
在一台机器上装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就能解析,此时
如果能解析,说明反向代理没有问题.

nginx:启动nginx
nginx -s reload:重新加载nginx配置文件
nginx -s stop:停止nginx(快速停止,可能并不保存相关信息)
nginx -s quit:停止nginx(完整有序的停止nginx,保存相关的信息)
nginx -v:命令只是简单显示nginx的版本信息(nginx version),而nginx -V不但显示nginx的版本信息,而且还显示nginx的配置参数信息
nginx -t:检查配置文件是否正确
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  apache 反向代理 nginx