網路城邦
上一篇 回創作列表 下一篇   字體:
免費網頁空間 GitHub Pages
2022/03/30 12:00:00瀏覽3293|回應1|推薦37

前不久在「免費網頁空間應用筆記(GCP, InfinityFree, DriveToWeb)」文中提到,把加掛的 Java Script 由 GCP 、最後搬到 DriveToWeb (實體位於 Google 雲端硬碟)的足跡歷程。沒想到不足一個月再次搬家,這回落腳於 GitHub Pages。

原因是經過一段時間觀察, DriveToWeb 的問題益發明顯。前文提到的檔案更新,一直不很可靠;更糟糕的是,後來發現安全連線也不時會出狀況,不知是過不了防火牆、防毒,還是其他關卡,總之有一搭沒一搭,逐漸難以忍受,再次上網搜尋替代方案。那天靈機一動,想到程式師的天堂──GitHub,原來它早就有了叫做「GitHub Pages」的網路空間方案。

猜想其原始目的,是讓程式或網頁設計師測試自己的專案,因此儘管容量、流量提供得不多,但操作限制極少。前文提到 InfinityFree 不允許,卻是我所必需的深度連結(Deep Linking), GitHub Pages 毫不在乎,儘量連。還有比這裡更合適的嗎?於是開帳號、進行必要設定,再上傳檔案,就搞定了,前後不到一小時。(詳細說明見此,照表操課即可)

因為太快了,感覺不值一提。然而實際上是花兩三週搬家到 DriveToWeb 的過程中,做了一些取捨和優化,才有辦法一轉眼就搞定。這個,倒值得記上一筆。

最初自己加的外掛功能,放在宿主提供的小格空間(UDN稱模版欄位,Blogger叫做小工具),後來字數漸多不敷使用,程式主體轉而利用外部的網頁空間,但連結依然在小格裡。自從出現行動版,發現邊欄、主文上下的小格都被省略,外掛跟著陣亡。怎麼辦呢? Blogger 還可以利用主題的 HTML 模版, UDN 則毫無著力之處,只能放在主文裡。糟糕的是,嵌入主文的 Java Script 包含外部網頁空間的網域名稱(domain name),一旦需要搬家,就得每篇文章逐一修改,以本格來說,目前超過 1500 篇。

前兩次搬家,利用網域名稱轉址服務(如 Freenom)來避開這個問題,只要修改背後的伺服器位址,不必逐一修訂每篇文章。然而這次由 GCP 遷出,原訂目的地 InfinityFree 和 DriveToWeb 各有問題及考量,不再能夠簡單利用網域名稱轉址。考慮免費網空條件日苛,將來問題只會多不會少,終於決定痛苦這一回,把外掛連結移回邊欄小格。

如此一來,代價當然是行動版不再有自己的外掛。不過行動版反正畫面空間有限(因此邊欄小格俱無),多掛一堆叮叮噹噹甚為無謂。唯有 AdSense 廣告,即使有如雞肋,刪掉也是可惜,於是決定內文只留廣告碼,其他移到邊欄小格。廣告碼反正多年未變,固定連到估狗;其他的,萬一將來又得搬家,只要改邊欄就好。

於是寫一支機器人,慢慢搬。UDN 沒什麼捷徑可走,一定要透過文章編輯; Blogger 雖有匯入匯出可用,但會犠牲一些諸如點閱次數的記錄,因此套用與 UDN 類似的手段,透過文章編輯修改儲存。至於為什麼用機器人還得慢慢搬,原因是 Blogger 有個隱晦的防衛機制,一段時間內修改超過一定次數就會觸發,阻止你繼續。所以呢,設定每天搬個150篇,花兩週時間修改完畢。

既然如此大費周章,索性做一件長期以來起心動念而從未實行的事,就是整合 UDN 和 Blogger 的外掛,讓雙方所有標章、社群按鈕和延伸閱讀都同步。除了重新安排檔案結構,更需要額外一支程式進行維護。好在兩週挺長,在全部改完之前搞定。

也因為萬事齊備,決心轉到 GitHub 的時候,才能在短時間內一步到位。更棒的是, GitHub胎裡帶的安全連線,不用再跟什麼憑證和 DNS 設定糾纏,不亦快哉!希望今後長長久久,毋須再為此煩心。

 
( 知識學習其他 )
回應 推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=jefnjil&aid=172651889

 回應文章

終南山
等級:8
留言加入好友
2022/04/14 09:34

Jeff & Jill(jefnjil) 於 2022-04-14 14:03 回覆:
讚啦