1 序言
小牧在去年用開源論壇給實驗室小伙伴們搭建了一個用於保存資料的論壇,並且通過花生殼做的內網穿透個域名解析,論壇的主頁面大概是這個樣子的。時間一晃就已經過去了一年,這一年來的維護可真是五味雜陳。
情況大概是這樣的,實驗室搭建在學校實驗室的一台主機上,主機上安裝的VMware虛擬機,並且安裝了Ubuntu系統,為啥要這樣做,因為還有實驗室的其他小伙伴要用Windows系統跑程序呀。Web服務器采用的最常見的LAPM(即Linux系統+Apache+Php+Mysql)結構,開源論壇采用的是最最常見的Discuz。我們在上面改吧改吧又加了一些小東西,勉強能用。這樣會出現哪些問題我稍微總結一下:
(1)花生殼內部服務器維護,導致身在外地的我斷開了與服務器的連接;
(2)實驗室停電,實驗室斷網;
(3)實驗室其他小伙伴不小心給你把電腦關了,或者重啟了;
總之,你需要每天在學校待着,如果想保證你的網站隨時隨刻都能正常運行,這些都是你的網站無法訪問的原因,當然這個時候你可以租雲服務器,如果是學生的話,學生機還是相當優惠的哈!!這里我想介紹用剩下的一塊樹莓派3B來搭建Web服務器,並且在上面搭建個人博客系統,以后咱的博客可就轉到樹莓派上去啦。
2 搭建LAPM環境
2.1 在樹莓派上安裝Linux操作系統
樹莓派安裝操作系統請參考: >>>點擊查看
2.2 安裝Apache
安裝Apache非常簡單,輸入指令:
sudo apt install apache2
等到安裝完成,遇到y/n時選擇y即可繼續安裝
安裝完成之后打開瀏覽器,輸入樹莓派的IP地址,成功安裝將會看到以下頁面:
2.3 安裝PHP
sudo apt install php
[補充] 查看php版本
php -v
測試php是否正常工作
(1)進入apache工作目錄
cd /etc/www/html/
(2)創建php測試文件index.php
<?php phpinfo(); ?>
一個符號都不要輸入錯哈!!!
(3)打開頁面,輸入樹莓派的IP地址/index.php,查看樹莓派的IP地址shell指令為:ifconfig,例如我的是192.168.1.143/index.php,成功的話將看到如下界面:
2.4 安裝MySQL
我們在Ubuntu系統上安裝MySQL上通常使用指令來安裝:
sudo apt install mysql-server
然而出現這樣的錯誤:
后面查閱了相關資料,原來可以用MariaDB代替,參考文獻 >>>點擊查看
需要注意的是配置數據庫密碼的時候的代碼需要幾點說明:
use mysql; UPDATE user SET password=password('password') WHERE user='root'; UPDATE user SET plugin='mysql_native_password' WHERE user = 'root'; flush privileges; exit
第二行括號內部單引號內的password就是設定的密碼,這個是很重要的,后面登錄數據庫的時候輸入的密碼就是這個,因此這里的password可以改成我們自己的密碼。其余的參考參考文獻即可。
安裝php-mysql
sudo apt-get install php-mysql
重啟apache
3 下載並安裝WordPress
下載鏈接:>>>點擊訪問
下載解壓完成之后直接上傳到樹莓派的/var/www/html文件夾下面,然后打開瀏覽器輸入樹莓派的IP地址/wp-admin/install.php,如果一切順利,將會看到如下界面。
上面顯示准備好如下信息,我們按照要求一項一項的准備好。主要是前三個,后面兩個不需管他,首先進入數據庫創建一個新的數據庫:
mysql -u root -p //進入數據庫 show databases; //查看現有數據庫的數據庫名 creare database WordPress_xiaomu //創建一個WordPress_xiaomu的數據庫
數據庫名就是我們剛剛創建的數據庫名,數據庫用戶名就是在創建數據庫的用的用戶名root,密碼也是之前創建,應該還記得吧!根據提示一步一步走就OK了。
創建完成之后下載主題發現如下錯誤:
網上很多說法是權限不夠,於是改了權限之后發現問題還是沒解決,什么原因?
或者是無法下載主題,我們嘗試查看apache的用戶組,使用指令
ps aux 或者 ps -aux
仔細查找里面的apache2的用戶組ID為www-data,因此我們直接用指令改變html文件夾下面的所有文件的用戶組權限
sudo chown www-data:www-data /var/www/html/
然后用指令查看用戶組權限
ls -l
然后就能完美的下載各種主題和插件了。當然你也許在過程中遇到各種各樣的BUG,需要根據錯誤信息一點一點去找原因,一點一點調通,祝建站順利。
我搭建的最后的效果如下: