有些人让你对明天充满期许,却再也没有出现在你的明天里。
### apache的配置
使用 Apache 模拟出两个站点,分别使用8081和8082端口
访问:
http://121.42.176.99:8081/
http://121.42.176.99:8082/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| Listen 8081 <VirtualHost *:8081> ServerAdmin webmaster@dummy-host2.example.com DocumentRoot "/usr/local/httpd/htdocs/test" DirectoryIndex index.html index.php ServerName 127.0.0.1 ErrorLog "logs/dummy-host2.example.com-error_log" CustomLog "logs/dummy-host2.example.com-access_log" common </VirtualHost> <Directory "/usr/local/httpd/htdocs/test"> Options FollowSymLinks AllowOverride all allow from all Require all granted </Directory> Listen 8082 <VirtualHost *:8082> ServerAdmin webmaster@dummy-host2.example.com DocumentRoot "/usr/local/httpd/htdocs/test1" DirectoryIndex index.html index.php ServerName 127.0.0.1 ErrorLog "logs/dummy-host2.example.com-error_log" CustomLog "logs/dummy-host2.example.com-access_log" common </VirtualHost> <Directory "/usr/local/httpd/htdocs/test"> Options FollowSymLinks AllowOverride all allow from all Require all granted </Directory>
|
网站的内容index.php 打印出服务器变量: var_export($_SERVER);
反向代理nginx
nginx 默认使用80端口,http://121.42.176.99/
配置:
1 2 3
| location / { proxy_passs http: }
|
之后重启nginx
这时候访问http://121.42.176.99/,就会访问的是apache的8081端口
问题
我们发现获取到的服务器信息不正确:
1、HTTP_HOST:localhost:8081
2、REMOTE_ADDR:127.0.0.1 (客户端的IP)
这会对我们的开发造成“迷茫”,因此要在nginx配置里加入
1、proxy_set_header Host $host;
2、proxy_set_header X-Real-IP $remote_addr;
其他的一些设置请google;