天天看點

使用群晖作mineportalbox(2):把webstation打造成snippter空間

本文關鍵字:網盤作github空間,網盤空間作示範空間,網盤空間作code snippter程式學習空間,群晖當github

在使用群晖作mineportalbox(1)中,我們提出了一些省事省心使用群晖的想法和經驗(為資源設定合理的檔案夾結構,設計單向同步的省心政策,etc..),我們還談到:郡晖不但能用于媒體存儲和同步,還可用于codesnipter hosting和同步空間,用網盤來存儲資料和運作代碼,“網盤即webos”,在整個系列的前面,我們不斷談到過類似概念:對于前者,文章《利用oc+wp打造backend storage oriented cms:oc靜态網站空間》,《oc微網誌記事本》,都是企圖将所有資料用文檔存儲來以網盤存儲的方式呈現和同步的努力 ------ 網盤空間即webos fs,這相對好了解。對于後者codesnippter空間,文章《web:visual instant demo run and debugging》,《post as app,paas.engitor one as demolet engine》中的jupyter notebook即是一個好例子:它實際上把.pynb當成了服務端腳本使之成為web空間,web空間天然就是一種codesnippter空間,裡面運作的codesnippter即是app,applet ------ 網盤空間即程式後端。

如此看來,codesnippter空間,這聽起來像是語言後端+虛拟web空間或者baas+paas容器?甚至docker,git這樣的東西,托管在github中的代碼并不會執行,dockerhub呢?它更強調存儲和運作單元的虛拟化和容器化,超越了僅僅需要同步這樣的需求。----- 但其實空間和其中運作什麼語言的程式,其實這些都不是質,我們隻是追求“可存儲為可同步的codesnippter空間”而已。是以一個網盤也是可以的。甚至把owncloud當git空間管理項目codesnippters也是可以的。----- 如此種種,不一而足。看似不一,其實都有相通點。而裝配了webstation的群晖也可以是這種webos,它使用的就是虛拟主機概念(加上它自身就是個網盤)。

PS:backend storage oriented webapp,面向以存儲為後端的webapp更符合PC的使用習慣,設想在群晖webos上存儲後端即是網盤空間,存儲在其上的媒體或軟體媒體即軟體,軟體即媒體,都可以統一同步,備份,隻是後者可以執行,被hosting,每一個codesnippter都可成為一個應用app,這樣的空間+空間上的一份codesnippter as app,即是backend storage oriented webapp ---- 這一切都像極了PC。

還比如我們在前面提到的cloudwall,它以文檔存儲為FS,其上的js可以是文檔也可以是代碼app,可以在用戶端執行也可以在服務端發揮服務端腳本的作用。是以cloudwall說它自己是webos有一定的意義。

1,如何省心使用群晖的codesnippter空間方面

使用群晖作mineportalbox(1)中談到了省心使用群晖的基礎方面,如果那些隻是基礎,那麼,如何依然還能省事省心地用好群晖托管程式的這一方面呢?本文即更進一步,拟讨論稍進階的這一論題。

如(1)文所講,使群晖能同時存儲媒體托管程式才是合理的。且要能統一備份和同步。好了,下面讓我們開始利用群晖的webstation(群晖目前支援的一虛拟空間語言和WEB後端),來搭建一個wordpress.

準備工作:

第一步,安裝官方的php5,7,mysql5,10,webstation,apache2,wordpress(它要求mysql10),phpmyadmin等套件,将wordpress,phpmyadmin預設安裝在web下,在phpmyadmin中建立資料庫,把wordpress安裝好,確定一切都運作起來(把wordpress位址填成frp轉發後的位址,最終能進入wp),這隻是準備工作,最終我們僅需得到webstation和wordpress,phpmyadmin的源碼。phpmyadmin套件,wordpress,mysql10套件要删除掉(保持僅mysql5,webstation這樣清希的套件結構,是為了節省資源,也是為了展現将webstation作為上述的codesnippter空間來承載php源碼集的方式,比如承載我們下述過程中提取出來的wordpress,phpmyadmin源碼)

第二步,wordpress源碼,phpmyadmin源碼全部從web下移過來到cloud->softs->www下。(是以其實原來的安裝方式也是利用虛拟主機這個原理,隻是它安裝到了web下,我們需要将其移到cloud下的www新目錄下統一和cloud下的->media備份)。

通過phpmyadmin備份導出mysql10的資料庫,導入到mysql5的資料庫,備份下/var/packages/phpMyAdmin/target/synology_added/etc/servers.json,然後解除安裝wordpress,phpmyadmin,mysql10這3個套件,

現在準備新的虛拟主機:

第三步,把servers.json上傳到www,.htaccess從wordpress中放到www根,打開webstation,選擇apache2.2,php5.6建立一個虛拟主機,端口81,删除wordpress/wp-include/wp-config.php中群晖新加的東西,否則到時它會調用81端口産生資源失效,而且把資料庫調為調用mysql5的pid檔案。虛拟主機目錄指向到cloud->softs->www ,提示轉換權限,注意群晖自動處理的權限不友善,是以我們還需要自動調下,否則無法編輯後儲存,也會出現no input files等顯示錯誤。手動調權限:www檔案夾自身,和遞歸子目錄權限都定義好為使用者http,權限加你目前登入的管理者使用者讀寫全控制。

最後,在frp配置轉發檔案中定義一個類型為http,local端口81,轉發到xxx.xxx.com,然後運作。

成功,wordpress和phpmyadmin都正常運作。

2:繼續把群晖用于管理snippter和code note:

這不用我說了吧,繼續建立虛拟主機,往裡面寫.htaccess,放.php檔案直接設定即可。你可以視整個www為codesnippter空間,也可建立一個codesnippter與www并列以它為基礎建立虛拟php空間。

PS:

其實我以前是不同意在群晖這樣的mineportalbox上搭網站的,但現在看來,對于個人這不失為一種省事,打包帶走,資料全在身邊的省事方案,至少我們關站關掉電源即可。而且,我們做在mineportalbox上的網站可以僅是一個中轉,比如上面提到的wp,那麼做一個wordpress中轉的意義在哪呢?

比如,平時你可在群晖的notestation寫文章,然後發表到這裡,讓它跟外面的網站同步。

還比如,普通情況下,這樣的wordpress做成的新站不利于收錄,但如果你寫的都是原創,就可以申明原創,可以作同步到百度熊掌這樣的原創平台。就不怕權重高的網站搶你原創了。

(此處不設回複,掃碼到微信參與留言,或直接點選到原文)

使用群晖作mineportalbox(2):把webstation打造成snippter空間