濮阳杆衣贸易有限公司

主頁 > 知識庫 > 在Nginx上配置多個站點的方法

在Nginx上配置多個站點的方法

熱門標簽:電銷機器人怎么接線路 撫順地圖標注 電銷機器人價值 新余高德地圖標注怎么修改 高德地圖標注好做嗎 如何分析地圖標注 大連400電話如何申請 達亞電銷機器人官網(wǎng) 外呼系統(tǒng)坐席費計入會計哪個科目

有時候你想在一臺服務器上為不同的域名運行不同的站點。比如www.siteA.com作為博客,www.siteB.com作為論壇。你可以把兩個域名的IP都解析到你的服務器上,但是沒法在Nginx的根目錄里同時運行兩個不同的網(wǎng)站。這時候,你就需要使用虛擬目錄了。假設你把博客放在”/home/user/www/blog”下,論壇放在”/home/user/www/forum”下。下面我們就開始配置了:

在Nginx配置目錄下,創(chuàng)建一個”vhost”目錄。本例假設Nginx是默認安裝,配置目錄在”/etc/nginx”

$ sudo mkdir /etc/nginx/vhost

創(chuàng)建siteA的配置文件

$ sudo vi /etc/nginx/vhost/vhost_siteA.conf

輸入以下配置信息

server {
  listen    80;            # 監(jiān)聽端口
  server_name www.siteA.com siteA.com;  # 站點域名
  root /home/user/www/blog;       # 站點根目錄
  index index.html index.htm index.php;  # 默認導航頁
 
  location / {
    # WordPress固定鏈接URL重寫
    if (!-e $request_filename) {
      rewrite (.*) /index.php;
    }
  }
 
  # PHP配置
  location ~ \.php$ {
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
  }
}

同siteA一樣創(chuàng)建siteB的配置文件,兩者僅有的不同是”server_name”和”root”目錄

$ sudo vi /etc/nginx/vhost/vhost_siteB.conf
server {
  ...
  server_name www.siteB.com siteB.com;  # 站點域名
  root /home/user/www/forum;       # 站點根目錄
  ...
}

打開nginx.conf文件

sudo vi /etc/nginx/nginx.conf

將虛擬目錄的配置文件加入到”http {}”部分的末尾

http {
  ...
  include /etc/nginx/vhost/*.conf;
}

重啟Nginx服務

$ sudo service nginx restart

現(xiàn)在訪問www.siteA.com和www.siteB.com,你將發(fā)現(xiàn)瀏覽器會打開不同的站點

禁止訪問小技巧

假如你的Nginx根目錄設在”/home/user/www”,你想阻止別人通過”http://IP地址/blog”或”http://IP地址/forum”來訪問你的站點,最簡單的方法就是禁止IP地址訪問。方法如下:

1.打開Nginx網(wǎng)站默認配置文件,記得先備份

$ sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default_bak
$ sudo vi /etc/nginx/sites-available/default

2.將所有內容刪除,只留以下配置

server {
  listen 80 default_server;
  server_name _;
  return 404;
}

3.重啟Nginx后,別人將無法通過IP地址訪問網(wǎng)站了

如果你不想禁止IP地址訪問整個目錄,只是要防止別人通過IP訪問你的博客和論壇。那就需要禁止”/blog”和”/forum”的目錄訪問。

1.打開Nginx網(wǎng)站默認配置文件,同上面一樣,記得先備份

2.在”server { }”部分加上以下配置

location ^~ /blog/ {
  deny all;
}
location ^~ /forum/ {
  deny all;
}

3.重啟Nginx即可

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:衡水 新鄉(xiāng) 南通 遼源 海東 湖南 楊凌 黃石

巨人網(wǎng)絡通訊聲明:本文標題《在Nginx上配置多個站點的方法》,本文關鍵詞  在,Nginx,上,配置,多個,站點,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《在Nginx上配置多個站點的方法》相關的同類信息!
  • 本頁收集關于在Nginx上配置多個站點的方法的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    噶尔县| 雷波县| 新昌县| 平谷区| 朔州市| 永吉县| 英超| 班玛县| 河池市| 商都县| 宜兰市| 甘孜县| 炉霍县| 土默特左旗| 女性| 巩义市| 满洲里市| 喜德县| 大足县| 金昌市| 平安县| 榆树市| 丹江口市| 罗田县| 华蓥市| 介休市| 依安县| 宣汉县| 镇康县| 都江堰市| 班戈县| 海林市| 庆城县| 阳信县| 澳门| 宝鸡市| 五莲县| 南乐县| 兴文县| 神木县| 鹤岗市|