過了三個月終於會自己設定的安心示意圖。
域名層級的順序
我以為網址的層級大小是從左到右這樣看過去。
是錯的。
網址的層級大小是從右邊看回左邊,越右邊的層級越高。
子網域是什麼(Subdomain)
所以這也是為什麼擺在第一個看到的,我們稱為子網域。
因為他的層級最小。
http://news.google.com/
.com 的層級最高、google 次之、最後才是 news
http://photos.google.com/
.com的 層級最高、google 次之、最後才是 photos
打個比喻,上面的層級關係就好像是「com 大學的 google 學院,裡面的 news 和 photos 科系」;news 和 photos 是子域名,通常是切分網站的對應功能。
上述的學院就是我們花錢購買的域名,學院聽起來就是要花錢蓋建築啊是不是;等到蓋好了有教室,裡面新增科系就是資源分配的應用,就像我們子域名的增加是不用付費的、只要去設定檔調整就好。
再舉個例子
在前篇有分享我購買 lunar.im 這個域名的流程,我的網址是:
http://lunar.im/ (測試站連結無續購,故已失效,看文章理解概念即可)
增加的子域名分別為:
http://demo.lunar.im/
http://news.lunar.im/
這篇分享設定 news 子網域的流程,從頭到尾都不用走到購物車掏錢呢!
當我第一次摸 Apache Virtual Host
我什麼概念都沒有 . _ .
基本上就是麻煩朋友在旁邊指(ㄕㄥ)導(ㄎㄨㄥˋ )我,要打什麼指令、要切去什麼資料夾,具體不是很清楚自己在做什麼,雖然有問但是當時背景知識不夠有點吸收不良。
Vim 編輯器進去還真的卡住出不來。
偷偷邊做、邊在感覺很重要的步驟截圖,然後收在資料夾當筆記。
到今天可以順好流程,整理出來分享很開心呢ヽ(●´∀`●)ノ~
Apache Virtual Host設定子網域
子網域的設定會關係到 Apache Virtual Host,實作需要有一台自己的 Server,可參考前篇筆記透過Linode架設靜態網站。
以及會操作 Linux 指令、以及 Vim 編輯器進得去要會出來。
除非需要自己設定,不然以上小知識就蠻夠用囉!
以下概要紀錄過程:
到 /etc/apache2 資料夾複製一份設定檔,命名為 news.conf。
vim 進去設定,點 i 開始編輯、按 Esc 輸入 :wq! 可以存檔脫逃。
設定的內容為 ServerName 的地方填上購買的網域和這次要新增的子網域 news,因為 lunar.im 是我買的,所以這邊一定會跟我不同。
DocumentRoot 是指連到 news.lunar.im 後,會去哪個資料夾找 index.html;後面我們會再新增資料夾和index.html 檔案。
a2ensite news.conf
啟用剛剛的設定檔,a2ensite 意思是 apache2 enable site,讓他從 sites-available 進到sites-enabled。
以遊戲來舉例。
sites-available:你的裝備倉庫,看得到但對戰鬥沒幫助。
sites-enabled:穿在身上的裝備(裝備中)(E)。
systemctl reload apache2
重新啟動Apache讓它生效。
新增 news 資料夾,並在下面新增 index.html 檔案。
從 FTP 來看剛剛的步驟就很清楚了,方便不熟悉終端機的朋友們瞭解。
接著設定 DNS,通常網域在那邊買就是到該後台設定,例如 Godaddy、Gundi、PChome;我用 Cloudflare 代管,直接到這邊編輯。
新增 news 的 A 紀錄,意思是當我連到 news.lunar.im 會找到這台主機;接著會吃到剛剛的 news.conf 設定檔,去找 news 資料夾下的 index.html。
想瞭解 A 和 CNAME,先前有整理在 HTTPS、A 紀錄與 CNAME。
http://news.lunar.im/
完成!
…
當初花了三個下班日看資料搞不懂,請朋友當面教也打擾好久,因為我一直不知道我下的指令在做什麼、那些資料夾怎麼來的,聽完還是似懂非懂覺得對朋友很抱歉呢。
三個月後的今天成功習得開子網域的技能,想想人生數十載,其實拉長來看,三個月後才搞懂也算不是太久(?)