1. 程式人生 > >Nginx/Apache反向代理

Nginx/Apache反向代理

gin oca lin 應用程序 分享 ogr con caption rri

初衷:一臺服務器上只有一個80端口,如果要部署多套網站,難免會有www.veblen.com:80808080或者www.veblen.com/test/child/pro.html這樣的尷尬情況,反人類的操作

Nginx

  • 下載Nginx
  • 雙擊應用程序即可啟動
技術分享
n3.png
  • 在瀏覽器窗口輸入localhost出現如圖所示頁面,即為代理成功


    技術分享
    n2.png
  • 打開config文件夾下 nginx.conf文件
技術分享
n1.png

在http下添加

server {
    listen 80;
    server_name www.veblen.com;

    location / {
        proxy_set_header   X-Real-IP $remote_addr;
        proxy_set_header   Host      $http_host;
        proxy_pass         http://127.0.0.1:8082;
    }
}

這樣,在訪問www.veblen.com的時候就會被Nginx代理到http://127.0.0.1:8082端口上

Apache(使用phpstudy工具)

  • 打開vhost-conf文件
技術分享
a1.png
  • 在文件中添加以下代碼,即可將www.veblen.com指向任意文件
<VirtualHost *:80>
    DocumentRoot "E:\WWW/test/child/pro.html"
    ServerName www.veblen.com
    ServerAlias veblen.com
  <Directory "E:\WWW/test/child/pro.html">
      Options FollowSymLinks ExecCGI
      AllowOverride All
      Order allow,deny
      Allow from all
      Require all granted
  </Directory>
</VirtualHost>
  • 代理端口,首先引入下圖中Apache模塊
技術分享
a2.png
  • vhost-conf文件中添加以下代碼,即可將www.veblen.com指向任意端口
<VirtualHost *:80>
    ServerName www.veblen.com
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>
ProxyPass / http://127.0.0.1:8080/
ProxyPassReverse / http://127.0.0.1:8080/
</VirtualHost>

補充:如果同學們想在本地測試,可以設置幾個攔截域名

  • 找到hosts文件
技術分享
h1.png

添加如下內容

127.0.0.1    www.veblen1.com
127.0.0.1    www.veblen2.com

Nginx/Apache反向代理