這篇簡單的教學可以讓你在樹莓派上執行你的 WordPress 網站。
WordPress 是一個非常受歡迎的開源部落格平台和內容管理平台(CMS)。它很容易搭建,而且還有一個活躍的開發者社群構建網站、建立主題和外掛供其他人使用。
雖然通過一鍵式 WordPress 設定獲得託管包很容易,但也可以簡單地通過命令列在 Linux 伺服器上設定自己的託管包,而且樹莓派是一種用來嘗試它並順便學習一些東西的相當好的途徑。
一個經常使用的 Web 套件的四個部分是 Linux、Apache、MySQL 和 PHP。這裡是你對它們每一個需要了解的。
樹莓派上執行的系統是 Raspbian,這是一個基於 Debian,為執行在樹莓派硬體上而優化的很好的 Linux 發行版。你有兩個選擇:桌面版或是精簡版。桌面版有一個熟悉的桌面還有很多教育軟體和程式設計工具,像是 LibreOffice 套件、Mincraft,還有一個 web 瀏覽器。精簡版本沒有桌面環境,因此它只有命令列以及一些必要的軟體。
這篇教學在兩個版本上都可以使用,但是如果你使用的是精簡版,你必須要有另外一台電腦去存取你的站點。
Apache 是一個受歡迎的 web 伺服器應用,你可以安裝在你的樹莓派上伺服你的 web 頁面。就其自身而言,Apache 可以通過 HTTP 提供靜態 HTML 檔案。使用額外的模組,它也可以使用像是 PHP 的指令碼語言提供動態網頁。
安裝 Apache 非常簡單。開啟一個終端視窗,然後輸入下面的命令:
sudo apt install apache2 -y
Apache 預設放了一個測試檔案在一個 web 目錄中,你可以從你的電腦或是你網路中的其他計算機進行存取。只需要開啟 web 瀏覽器,然後輸入地址 <http://localhost>
。或者(特別是你使用的是 Raspbian Lite 的話)輸入你的樹莓派的 IP 地址代替 localhost
。你應該會在你的瀏覽器視窗中看到這樣的內容:
這意味著你的 Apache 已經開始工作了!
這個預設的網頁僅僅是你檔案系統裡的一個檔案。它在你原生的 /var/www/html/index/html
。你可以使用 Leafpad 文字編輯器寫一些 HTML 去替換這個檔案的內容。
cd /var/www/html/sudo leafpad index.html
儲存並關閉 Leafpad 然後重新整理網頁,檢視你的更改。
MySQL(讀作 “my S-Q-L” 或者 “my sequel”)是一個很受歡迎的資料庫引擎。就像 PHP,它被非常廣泛的應用於網頁服務,這也是為什麼像 WordPress 一樣的專案選擇了它,以及這些專案是為何如此受歡迎。
在一個終端視窗中輸入以下命令安裝 MySQL 服務(LCTT 譯註:實際上安裝的是 MySQL 分支 MariaDB):
sudo apt-get install mysql-server -y
WordPress 使用 MySQL 儲存文章、頁面、使用者資料、還有許多其他的內容。
PHP 是一個前處理器:它是在伺服器通過網路瀏覽器接受網頁請求是執行的程式碼。它解決那些需要展示在網頁上的內容,然後傳送這些網頁到瀏覽器上。不像靜態的 HTML,PHP 能在不同的情況下展示不同的內容。PHP 是一個在 web 上非常受歡迎的語言;很多像 Facebook 和 Wikipedia 的專案都使用 PHP 編寫。
安裝 PHP 和 MySQL 的外掛:
sudo apt-get install php php-mysql -y
刪除 index.html
,然後建立 index.php
:
sudo rm index.htmlsudo leafpad index.php
在裡面新增以下內容:
<?php phpinfo(); ?>
儲存、退出、重新整理你的網頁。你將會看到 PHP 狀態頁:
你可以使用 wget
命令從 wordpress.org 下載 WordPress。最新的 WordPress 總是使用 wordpress.org/latest.tar.gz 這個網址,所以你可以直接抓取這些檔案,而無需到網頁裡面檢視,現在的版本是 4.9.8。
確保你在 /var/www/html
目錄中,然後刪除裡面的所有內容:
cd /var/www/html/sudo rm *
使用 wget
下載 WordPress,然後提取裡面的內容,並移動提取的 WordPress 目錄中的內容移動到 html
目錄下:
sudo wget http://wordpress.org/latest.tar.gzsudo tar xzf latest.tar.gzsudo mv wordpress/* .
現在可以刪除壓縮包和空的 wordpress
目錄了:
sudo rm -rf wordpress latest.tar.gz
執行 ls
或者 tree -L 1
命令顯示 WordPress 專案下包含的內容:
.├── index.php├── license.txt├── readme.html├── wp-activate.php├── wp-admin├── wp-blog-header.php├── wp-comments-post.php├── wp-config-sample.php├── wp-content├── wp-cron.php├── wp-includes├── wp-links-opml.php├── wp-load.php├── wp-login.php├── wp-mail.php├── wp-settings.php├── wp-signup.php├── wp-trackback.php└── xmlrpc.php3 directories, 16 files
這是 WordPress 的預設安裝源。在 wp-content
目錄中,你可以編輯你的自定義安裝。
你現在應該把所有檔案的所有權改為 Apache 的執行使用者 www-data
:
sudo chown -R www-data: .
為了搭建你的 WordPress 站點,你需要一個資料庫。這裡使用的是 MySQL。
在終端視窗執行 MySQL 的安全安裝命令:
sudo mysql_secure_installation
你將會被問到一系列的問題。這裡原來沒有設定密碼,但是在下一步你應該設定一個。確保你記住了你輸入的密碼,後面你需要使用它去連線你的 WordPress。按回車確認下面的所有問題。
當它完成之後,你將會看到 “All done!” 和 “Thanks for using MariaDB!” 的資訊。
在終端視窗執行 mysql
命令:
sudo mysql -uroot -p
輸入你建立的 root 密碼(LCTT 譯註:不是 Linux 系統的 root 密碼,是 MySQL 的 root 密碼)。你將看到 “Welcome to the MariaDB monitor.” 的歡迎資訊。在 “MariaDB [(none)] >” 提示處使用以下命令,為你 WordPress 的安裝建立一個資料庫:
create database wordpress;
注意宣告最後的分號,如果命令執行成功,你將看到下面的提示:
Query OK, 1 row affected (0.00 sec)
把資料庫許可權交給 root 使用者在宣告的底部輸入密碼:
GRANT ALL PRIVILEGES ON wordpress.* TO 'root'@'localhost' IDENTIFIED BY 'YOURPASSWORD';
為了讓更改生效,你需要重新整理資料庫許可權:
FLUSH PRIVILEGES;
按 Ctrl+D
退出 MariaDB 提示符,返回到 Bash shell。
在你的 樹莓派 開啟網頁瀏覽器,位址列輸入 http://localhost
。選擇一個你想要在 WordPress 使用的語言,然後點選“Continue”。你將會看到 WordPress 的歡迎介面。點選 “Let’s go!” 按鈕。
按照下面這樣填寫基本的站點資訊:
Database Name: wordpressUser Name: rootPassword: <YOUR PASSWORD>Database Host: localhostTable Prefix: wp_
點選 “Submit” 繼續,然後點選 “Run the install”。
按下面的格式填寫:為你的站點設定一個標題、建立一個使用者名稱和密碼、輸入你的 email 地址。點選 “Install WordPress” 按鈕,然後使用你剛剛建立的賬號登入,你現在已經登入,而且你的站點已經設定好了,你可以在瀏覽器位址列輸入 http://localhost/wp-admin
檢視你的網站。
更改你的永久連結設定,使得你的 URL 更加友好是一個很好的想法。
要這樣做,首先登入你的 WordPress ,進入儀表盤。進入 “Settings”,“Permalinks”。選擇 “Post name” 選項,然後點選 “Save Changes”。接著你需要開啟 Apache 的 rewrite
模組。
sudo a2enmod rewrite
你還需要告訴虛擬託管服務,站點允許改寫請求。為你的虛擬主機編輯 Apache 組態檔:
sudo leafpad /etc/apache2/sites-available/000-default.conf
在第一行後新增下面的內容:
<Directory "/var/www/html"> AllowOverride All</Directory>
確保其中有像這樣的內容 <VirtualHost *:80>
:
<VirtualHost *:80> <Directory "/var/www/html"> AllowOverride All </Directory> ...
儲存這個檔案,然後退出,重新啟動 Apache:
sudo systemctl restart apache2
WordPress 是可以高度自定義的。在網站頂部橫幅處點選你的站點名,你就會進入儀表盤。在這裡你可以修改主題、新增頁面和文章、編輯選單、新增外掛、以及許多其他的事情。
這裡有一些你可以在樹莓派的網頁服務上嘗試的有趣的事情:
不要忘記,樹莓派是一台 Linux 電腦。你也可以使用相同的結構在執行著 Debian 或者 Ubuntu 的伺服器上安裝 WordPress。