對這文章發表回應
發表限制: 非會員 可以發表
發表者: 冷日 發表時間: 2018/12/21 10:32:59
Nginx – 設定虛擬主機 (Virtual Host) 的方式
目前的需求狀況是,兩個網域要指向同一個 IP 的設定。
範例
imjsn.com 指向 A主機 127.0.0.1
www.imjsn.com 也要指向 A主機 127.0.0.1。
雲端主機是 CenterOS 6.5。
假設 jsn 是我的帳號名稱。注意,有些主機不叫做 vhost.conf 可能會叫做 virtual.conf 之類。
網頁路徑
每台主機設定都有差異,多數會放置在如
就看你怎麼去自行設定。
統一設定檔
這裡面可能會出現 include 這樣的關鍵字,用來引用它處的設定檔,這是為了方便分門別類管理。當遇到不同的網域或網址,會採用不同的設定檔。
*這個方法是分開各自的設定檔。有些作法是寫在同一個檔案裡;分開來我覺得是比較好懂比較不凌亂。
各別設定檔 (每個網域都一個)
imjsn.com 設定在此 (我雲端主機設定好一開始就有的):
www.imjsn.com 設定在此:
如果我打算將 www.mjson.com 導向到 imjsn.com 就會長這樣
如果你想讓 IP (如 21.216.11.111 ) 也能自動導向到 imjsn.com ,那也是使用這樣的設定,只要多增加一個就好了。 這樣統一個對外的網域,在 SEO 與流量上會比較有利喔!
解釋
Nginx – 設定虛擬主機 (Virtual Host) 的方式 | jsnWork
目前的需求狀況是,兩個網域要指向同一個 IP 的設定。
範例
imjsn.com 指向 A主機 127.0.0.1
www.imjsn.com 也要指向 A主機 127.0.0.1。
雲端主機是 CenterOS 6.5。
假設 jsn 是我的帳號名稱。注意,有些主機不叫做 vhost.conf 可能會叫做 virtual.conf 之類。
網頁路徑
/virtualhost/jsn/網頁都放在這底下,如 index.html
每台主機設定都有差異,多數會放置在如
/var/www/html/這裡
就看你怎麼去自行設定。
統一設定檔
/usr/local/nginx/conf/vhost.conf
這裡面可能會出現 include 這樣的關鍵字,用來引用它處的設定檔,這是為了方便分門別類管理。當遇到不同的網域或網址,會採用不同的設定檔。
include /usr/local/nginx/conf/vhost/imjsn/imjsn.c53196; // 可能是預設的。這裡引用沒有 www 的設定檔。後面的 c53196 大概是我這邊系統自己產生添加的亂數編號。
include /usr/local/nginx/conf/vhost/www.imjsn/www.imjsn.c53196; // 這裡引用有 www 的網域設定。因為這是我自己添加的,所以我接著要到 vhost 底下自己建立一個路徑 /www.imjsn/
*這個方法是分開各自的設定檔。有些作法是寫在同一個檔案裡;分開來我覺得是比較好懂比較不凌亂。
各別設定檔 (每個網域都一個)
imjsn.com 設定在此 (我雲端主機設定好一開始就有的):
/usr/local/nginx/conf/vhost/imjsn/imjsn.c53196;
www.imjsn.com 設定在此:
/usr/local/nginx/conf/vhost/www.imjsn/www.imjsn.c53196
如果我打算將 www.mjson.com 導向到 imjsn.com 就會長這樣
server {
location ~ ^(.+\.php)(.*)$ {
fastcgi_pass 127.0.0.1:7027 ;
include fastcgi.conf ;
}
root /virtualhost/imjsn;
access_log /usr/local/nginx/logs/imjsn-imjsn.c53196 yundns_log ;
index index.php default.php index.htm default.html index.html ;
server_name imjsn.com ;
location ~ \.(mdf|sql|bak)$ {
return 404 ;
}
}
server {
server_name www.imyolo.com ;
rewrite ^/(.*) http://imyolo.com/$1 permanent;
}
如果你想讓 IP (如 21.216.11.111 ) 也能自動導向到 imjsn.com ,那也是使用這樣的設定,只要多增加一個就好了。 這樣統一個對外的網域,在 SEO 與流量上會比較有利喔!
解釋
server_name : 輸入設定的網域名稱
rewrite : 輸入對應的網域名稱
access_log : 輸入access_log 的存放路徑
error_log : 輸入error_log 的存放路徑
root : 設定此網域的網頁資料所存放的地方
index : 設定首頁能讀的項目
Nginx – 設定虛擬主機 (Virtual Host) 的方式 | jsnWork