1. Nginx
(1)安装
$ yum -y install nginx
(2)配置
nginx.conf
部分配置
server {
listen 80;
server_name sam_rui.com; # 外部地址(域名)
access_log /var/log/nginx/access.log;
location / {
proxy_pass http://127.0.0.1:8000;# 监听目标服务器
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Nginx的工作流程是,监控 server_name (域名或者ip) 的 http 请求(端口80
代表http
协议端口),然后根据这个请求,访问目标服务器 http://127.0.0.1:8000
, 把访问的结果返回给 server_name
.
监听http默认的端口号80
server_name:个人网站域名
把请求代理到本机的8000端口。
(3) Nginx 管理
启动 nginx 服务
$ service nginx start
停止 nginx 服务
$ service nginx stop
重启 nginx 服务
$ service nginx restart
2. Nginx 监听不同域名
#同时监听相同端口,可以通过匹配server_name 来决定最终匹配哪个server
#server1
server {
listen 80;
#server_name localhost;
location / {
rewrite / http://www.baidu.com;
}
}
#server2
server {
listen 80;
#uc-center.m.szy.net 在本地的hosts文件 解析到 127.0.0.1
server_name uc-center.m.szy.net;
location ~* ^\/(.*)$ {
rewrite ^\/(.*)$ http://www.sina.com;
}
}
例如: 访问 http://uc-center.m.szy.net 不会因为server1的配置,而导致跳转到“百度首页”。
nginx会优先匹配 配置有server_name的server2,最终跳转到"新浪首页"。
参考: