佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > 在Nginx上配置多個(gè)站點(diǎn)的方法

在Nginx上配置多個(gè)站點(diǎn)的方法

熱門標(biāo)簽:網(wǎng)站建設(shè) 智能手機(jī) 百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 阿里云 美圖手機(jī) 硅谷的囚徒呼叫中心 使用U盤(pán)裝系統(tǒng) 檢查注冊(cè)表項(xiàng)

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

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

$ sudo mkdir /etc/nginx/vhost

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

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

輸入以下配置信息

server {
  listen    80;            # 監(jiān)聽(tīng)端口
  server_name www.siteA.com siteA.com;  # 站點(diǎn)域名
  root /home/user/www/blog;       # 站點(diǎn)根目錄
  index index.html index.htm index.php;  # 默認(rèn)導(dǎo)航頁(yè)
 
  location / {
    # WordPress固定鏈接URL重寫(xiě)
    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;  # 站點(diǎn)域名
  root /home/user/www/forum;       # 站點(diǎn)根目錄
  ...
}

打開(kāi)nginx.conf文件

sudo vi /etc/nginx/nginx.conf

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

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

重啟Nginx服務(wù)

$ sudo service nginx restart

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

禁止訪問(wèn)小技巧

假如你的Nginx根目錄設(shè)在”/home/user/www”,你想阻止別人通過(guò)”http://IP地址/blog”或”http://IP地址/forum”來(lái)訪問(wèn)你的站點(diǎn),最簡(jiǎn)單的方法就是禁止IP地址訪問(wèn)。方法如下:

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

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

2.將所有內(nèi)容刪除,只留以下配置

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

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

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

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

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

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

3.重啟Nginx即可

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:湘潭 湖北 山南 賀州 煙臺(tái) 黃山 懷化 通遼

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《在Nginx上配置多個(gè)站點(diǎn)的方法》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    贵港市| 富锦市| 峨眉山市| 姜堰市| 普宁市| 沙坪坝区| 华亭县| 年辖:市辖区| 宁蒗| 峨眉山市| 桓台县| 锡林郭勒盟| 黔西| 石嘴山市| 宁河县| 武鸣县| 苏尼特左旗| 泗水县| 朔州市| 巩留县| 丰顺县| 新平| 临沧市| 增城市| 嘉荫县| 涡阳县| 兴山县| 从江县| 依安县| 宜春市| 桐柏县| 阳朔县| 迭部县| 赣榆县| 阳城县| 龙州县| 嵊州市| 蓬安县| 沙坪坝区| 临武县| 五峰|