跳到主要內容

Fedora 29 架站實務 之 Part 9 一機多站與DNS

相對於前面的幾個部分,一機多站的設定就相當簡單了。

在前一個章節裡:

Part 8 SELinux、nginx 設定檔與網站哪裡放 ?

什麼是DNS ?:

當拿起手機想打給某人時,你會先去通訊錄找這個人的名字再請軟體撥出,還是直接開啟撥號鍵盤直接撥打完整的電話號碼呢 ? 相信大部分的情形都會選擇先開啟通訊錄,再撥號。
有意義的文字比起無意義的數字來的容易記憶也較為方便,但可惜的是在網際網路通訊系統中,實際上是看IP位址與各節點路由器的路由表來決定如何到達目的地的。這對上網可是一大不便,想想看當上網的時候還要輸入216.58.200.227來連上Google這是多麼麻煩的事情,所以便有了DNS。運作原理是當使用者輸入一個DNS名稱時,其規定的DNS伺服器會找出與名稱相對應的IP位置回傳給電腦,這樣使用者不需要辛辛苦苦地記得各個網站的IP位置,只要知道簡單的DNS名稱即可。

那一機多站… 這樣不是不合理嗎 ?

難道這樣不需要多個IP對應多個DNS位置嗎 ? 那麼多DNS位置對應到同一個IP位置,怎麼可能可以顯示不一樣的東西 ? Web Server 不是只有一台嗎 ? 其實只要注意一下一個正常的HTTP要求的指令,就會看出端睨:
GET / HTTP/1.1
HOST: www.google.com.tw

是的,縱使DNS解譯出的IP位置一樣,但HTTP要求中含有HOST這行,足以讓網頁伺服器知道你要存取的是哪個DNS位置對應的網站。

在開始之前: 

由於DNS名稱申請並非唾手可得,需要手續,且也不是本章的重點,故在此不論述。
為了實驗我們申請了兩組DNS位置: ckip.x.x.tw, dc.x.x.tw 兩組都對應到134.0.0.151,而機器也因本次Demo暫時從134.0.0.136 改為 134.0.0.151。

確認你的DNS位置是不是已經生效:

$ nslookup [你申請DNS位置]

開始前請注意: 請先至少將Part 7與8看完,這裡我們將直接示範撰寫nginx 設定檔案。關於root 資料夾的規定與SELinux應該注意之事項,這裡不會再提及:

既然要一機多站,就不可能讓置放網頁的資料夾位置相同,於是我們作了以下規劃:

/data/www/ckip/ 對應 ckip.x.x.tw
/data/www/dc/ 對應 dc.x.x.tw

建立資料夾:
# mkdir /data/www/ckip
# mkdir /data/www/dc

裡面各建立一個test.html檔案:
# nano /data/www/ckip/test.html
# nano /data/www/dc/test.html


ckip的test.html
<html>
<title>CKIP TEST</title>
<body>
<h1>THIS IS CKIP</h1>
</body>
</html>

dc的test.html
<html>
<title>DC TEST</title>
<body>
<h1>THIS IS DC</h1>
</body>
</html>




將這兩個資料夾(包含裡面的檔案)設定權限給nginx:

# chown -R nginx.nginx /data/www/ckip/
# chown -R nginx.nginx /data/www/dc/


然後再設定這兩個資料夾的SELinux權限:

# semanage fcontext -a -t httpd_sys_rw_content_t “/data/www/ckip(/.*)?”
# restorecon -Rv /data/www/ckip/
# semanage fcontext -a -t httpd_sys_rw_content_t “/data/www/dc(/.*)?”
# restorecon -Rv /data/www/dc/


開始撰寫Nginx 設定檔案:

基本上不困難,先複製兩個server 的Block{},會使得你的nginx 設定檔案看起來像這樣:


第一個server 的Block{}不要做任何更改,我們只改第二個與第三個:


備註: 預設的server Block{} (也就是server_name 為 _; 的那個),是無論如何都需要存在的,刪掉預設的Server Block 會導致nginx 拒絕連線。

重新啟動nginx:

# nginx -t
# systemctl restart nginx

接下來開啟網頁瀏覽器:
輸入 ckip.x.x.tw/test.html 與 dc.x.x.tw/test.html
如果有看到顯示不一樣的內容才代表設定正確喔。



留言

這個網誌中的熱門文章

網路卡卡急救章 – 您用的網路,您了解嗎 ?

這是我應該在乎的事情嗎 ? 是,同時也不是。取決於你對於網路的要求程度有多高而有變異。對於一個上上網偶爾看看Youtube的人,這些不是他會在乎的問題,便宜,能用就好,對一個線上遊戲玩家來說,穩定才是首要考量的問題,對一個追劇狂來說,方案提供的總流量才是考量。所以正在看文章的您是什麼樣的使用者呢 ? 無論怎麼樣的使用者,對於自己正在使用什麼樣的網路多了解一些,也不是壞事。

暫時當一下外國人的 SoftEther VPN Gate

在一個自由的國度與優質的ISP裡: 這兩個評斷台灣的網路服務環境,我想許多人便是吐槽不已,但我想與各位討論的,便是靜下來思考: 台灣的ISP好在哪些地方 ? 還記得第一次日本出差的嚮往,我期待著超乎我能所想像的高速網路,隨處可方便使用的行動網路。莫約小學(2006年左右),網路上大家總是謾罵著中華電信傲慢無理的價格且速度緩慢,而日本如火如荼的進行著光纖鋪設,便是邊用中華順便謾罵。 而在日本的三個月期間,用的是NTT(相當於日本版的中華電信)的有線網路與4G服務,我覺得才便能體會台灣ISP所提供的服務水準: NTT FLET'S光迴線 300 晚間尖峰時段測速 2018/3/05 會津若松市 中華電信 4G 晚間尖峰時段測速 2019/3/20 花蓮縣壽豐鄉 在日本,無線網路通訊基本上是沒有吃到飽的(Au WiMax 雖然流量無限但還是會有每日到量限速),所以若要回宿舍做事最好還是裝固網 But What can I say ? 而台灣的ISP(用中華電信的體驗下來),是鮮少管東管西的: eMule 流量要不要限制、BT故意阻擋等等,讓使用VPN的理由實在不多,而自由的發言,不管控觀看內容,我想這個就留給客官們各自評斷了。 而如果對於P2P不友善的ISP有哪些, 倒是可以看看這個表 ,便一切皆知喔。 有限制地區的服務: 然而網站有些內容仍然會因為地區的關係而決定要不要顯示,如果是學術研究者,會很經常用到TANET的SSL-VPN,因為這些 死要錢 的論文網站都會綁學校的IP Block,要使用非得以用學校的網路出去。日常生活中,最明顯的可以從某些Youtube 影片,陸方的影音網站便能知曉 VPN 與你: VPN能提供的好處不少,但能導致的壞處也不少: VPN的好處: 隱藏自己實際的身分、公共網路上(如機場、飯店等開放式WiFi)他人無法竊聽整個傳輸內容(包含上了什麼網站等等的)、使用當地國網路優勢 VPN的壞處: 不良VPN提供業者可能會記錄傳輸內容、伺服器效能不足導致網路使用緩慢。 SoftEther VPN 與筑波大學: 筑波大學在VPN方面的研究十分奇葩,也相對先進。用盡各種方式建立VPN(甚至只要能送Ping 也能作為VPN,實際運作原理不多說)

讓我們來談談DELL XPS 13 9343 那恐怖的雜音

作為Dell 旗艦級筆電的XPS系列: 對一個實驗生來說,長效高性能的筆電,是一個叫做: 想作為必備,但是沒本事買配備。 餐餐的泡麵與吐司果醬,當覺得已經似乎快超脫時,便重金砸下。