在本系列第九期《樹莓派4B家庭服務器搭建指南》第九期:用樹莓派低成本給熱心老哥搭個窩,在樹莓派建立BBS論壇flarum並映射到公網全攻略 https://www.v2fy.com/p/2021-11-26-flarum-1637921368000/ 中,我們完成了PHP環境的搭建,數據庫,Nginx的安裝...
這一節, 我們將在樹莓派運行世界上最受歡迎的網站框架WordPress, 創建網站並開放到公網。這個新網站域名爲pi.v2fy.com 放一些樹莓派相關資源的內容。
套用一句羅老師句式:在樹莓派上運行樹莓派資源網站合適麼?合適的不得了~
從WordPress官網免費下載安裝包到樹莓派
cd /opt/
mkdir pi.v2fy.com
cd pi.v2fy.com
wget https://wordpress.org/wordpress-5.8.2.tar.gz
tar zxvf wordpress-5.8.2.tar.gz
mv /opt/pi.v2fy.com/wordpress/* /opt/pi.v2fy.com/
rm -rf wordpress
chmod 777 -R /opt/pi.v2fy.com/
將wordpress-5.8.2.tar.gz
解壓後,我們獲得了/opt/pi.v2fy.com/wordpress
文件夾,將/opt/pi.v2fy.com/wordpress
文件夾中的內容,放入/opt/pi.v2fy.com/
,刪除/opt/pi.v2fy.com/wordpress
文件夾, 此時WordPress目錄爲/opt/pi.v2fy.com
,wordpress-5.8.2.tar.gz
也備份在pi.v2fy.com
目錄下,如果某天改wordpress
某個文件改出問題,可以解壓wordpress-5.8.2.tar.gz
中的原始文件進行替換修復。
將/opt/pi.v2fy.com/
配置到樹莓派的Nginx中
爲樹莓派安裝的Nginx創建新的配置文件
sudo touch /etc/nginx/conf.d/pi.v2fy.com.conf
在/etc/nginx/conf.d/pi.v2fy.com.conf
中加入以下內容
server {
listen 80;
listen [::]:80;
root /opt/pi.v2fy.com;
index index.php index.html index.htm;
server_name pi.v2fy.com;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~ /\. {
deny all;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
}
- 測試配置,並重啓Nginx
sudo nginx -t
sudo nginx -s reload
在局域網的電腦上配置host, 將pi.v2fy.com指向樹莓派ip,測試WordPress是否順利啓動
如果能看到WordPress界面,則WordPress啓動成功。
接下來我們要新建一個數據庫,爲WordPress提供存儲,
我們前面章節,已經圖文詳盡的寫過《如何在樹莓派安裝數據庫》詳細步驟,沒有安裝數據庫的小夥伴,請查看往期文章 《樹莓派4B家庭服務器搭建指南》第九期:用樹莓派低成本給熱心老哥搭個窩,在樹莓派建立BBS論壇flarum並映射到公網全攻略 https://www.v2fy.com/p/2021-11-26-flarum-1637921368000/
數據庫安裝完成後,打開 http://192.168.50.223:8090/
創建新數據庫
設置數據庫編碼
數據庫創建完成後,回到瀏覽器,開始配置wordpress
填寫數據庫信息並提交
運行安裝
填寫網站基本信息
安裝成功
此刻數據庫裏已經新建完成大量WordPress網站數據表
輸入賬戶密碼,即可登錄後臺
網站搭建完成
開始漢化:從官方網站,獲取漢化包,將漢化包存儲到/opt/pi.v2fy.com/wp-content/languages
文件夾中,保存爲zh_CN.mo
cd /opt/pi.v2fy.com
mkdir /opt/pi.v2fy.com/wp-content/languages
curl https://translate.wordpress.org/projects/wp/dev/zh-cn/default/export-translations/?format=mo --output zh_CN.mo
選擇簡體中文,漢化成功
將WordPress映射到公網
首先,你需要將域名,解析到有固定ip的服務器
對Nginx配置不熟悉的,請參考往期包含Nginx安裝的教程 :
對申請https證書不熟悉的,請參考往期安裝證書教程:
零依賴!使用acme.sh設置nginx多個https證書自動更新,無限續期https證書 https://www.v2fy.com/p/2021-06-27-nginx-https-1624774964000/ ,在服務器配置完成pi.v2fy.com域名的https證書
在有固定ip的服務端,新增配置文件 /etc/nginx/conf.d/pi.v2fy.com
, 其中的內容爲
upstream pi_v2fy_com { server 127.0.0.1:8666; }
server {
server_name pi.v2fy.com;
listen 80;
location / {
proxy_pass http://pi_v2fy_com;
proxy_set_header Host $host:server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name pi.v2fy.com;
location / {
proxy_pass http://pi_v2fy_com;
proxy_set_header Host $host:server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
ssl_certificate "/etc/nginx/ssl/pi.v2fy.com/fullchain.cer";
ssl_certificate_key "/etc/nginx/ssl/pi.v2fy.com/pi.v2fy.com.key";
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
# Load configuration files for the default server block.
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
安裝插件 Really Simple SSL
爲了避免線下載主題和插件時,被要求輸入ftp賬戶密碼,我們需要配置一個權限寬裕的目錄,用來存儲在線下載的主題和插件
在樹莓派運行以下命令
mkdir /opt/pi.v2fy.com/wp-content/tmp
chmod 777 -R /opt/pi.v2fy.com/wp-content/tmp
然後在/opt/pi.v2fy.com/wp-config.php
底部追加以下內容
define('WP_TEMP_DIR', ABSPATH.'wp-content/tmp');
define("FS_METHOD", "direct");
define("FS_CHMOD_DIR", 0777);
define("FS_CHMOD_FILE", 0777);
保存/opt/pi.v2fy.com/wp-config.php
即可生效
通過在線商店下載並安裝並啓動 Really Simple SSL
插件的作用是,將資源默認的http請求頭,改爲https
插件安裝完成後,會經歷一次重新登錄
然後所有的資源頭都變成了https
如果你想完全使用https替代http, 可以將擁有固定ip的服務端的配置小改一下
rewrite ^(.*)$ https://$host$1 permanent;
這樣就能將所有的http請求都轉發到對應的https頁面了
使用超輕量免費主題
我推薦這個免費輕量主題GeneratePress https://wordpress.org/themes/generatepress/
主題安裝完成後,啓用GeneratePress
輕量化的主題,數據包很小,可以獲得極快的加載速度
至此,一個基於樹莓派的WordPress網站就發佈到了公網,這個網站後續會存儲一些樹莓派相關的資源,歡迎訪問:https://pi.v2fy.com
爲什麼推薦輕量化的主題?
- 輕量化的主題打開速度快,搜索引擎會爲打開速度快的網站加分
- 樹莓派網站所在的主機性能強,存儲空間也非常廉價,運營成本也低,但流量出口依然在服務器端,流量能省一點是一點兒
- 輕量化主題沒有亂七八糟的樣式,觀感簡潔清新,用戶體驗好
如何優雅管理WordPress網站?
zhaoolee寫了一個使用markdown文件與WordPress站一一對應的腳本,通過白嫖Github Actions每月2000分鐘使用時長,讓Github Action自動更新wordpress站的同時,還可以將文章索引展示到Github倉庫,供Google索引,用了將近一年,效果很不錯,歡迎體驗
腳本開源倉庫地址: https://github.com/zhaoolee/WordPressXMLRPCTools , 使用說明也在開源地址的REAMD.md裏面
小結
作爲一個博客寫了5年的老鳥,WordPress依然是我最推薦的個人博客框架,有人說WordPress重,但功能豐富總比功能不夠用要好的多,輕量化的主題配合靜態化插件,可以讓網頁加載速度超快,獨立的數據庫可以讓你的博客擁有任何想要的功能,甚至可以基於WordPress魔改出電商網站。
如果你和我一樣熱愛Markdown,用我提供的腳本,不僅可以通過Markdown管理自己的網站,而且還可以將文章內容開源到Github, 創建真正的開源博客,還能每次更新文章體驗一波白嫖Github Actions的快樂。
樹莓派部署WordPress適合長期寫博客:很多人買了雲服務器,買了域名,建個WordPress站依然卡成狗,時間久了,懶得更新,服務到期,數據消散,博客項目不了了之;如果採用樹莓派做主機,樹莓派的性能足以輕鬆運行WordPress, 只要你給樹莓派通上電,想什麼時候寫,就什麼時候寫,服務器到期了,數據也在樹莓派上,想對外展示了,重新部署一下內網穿透,博客又滿血復活~
本文永久更新地址(歡迎來讀留言,寫評論):
https://www.v2fy.com/p/2021-12-01-wordpress-pi-1638367676000