一、前言
學習在您的Raspberry Pi上設置LAMP(Linux,Apache,MariaDB,PHP)堆棧,並將其配置為 Web 服務器。您將下載並安裝 WordPress 並設置一個基本網站,您可以在與Pi相同的網絡上的任何設備上訪問該網站。
- 注意:本文發布於 Debian 10.3 發行版剛出不久,它的系統更新相對於其他 Linux 發行版更加激進,一些軟件的配置非常迷,我也沒搞動是怎么回事,所以請 **系統鏡像為 Debian 10.3 ** 的伙伴們注意。
二、安裝 LAMP
1. 安裝 Apache2
-
下載 Apache2
sudo apt-get install apache2 -
測試Web服務器
默認情況下,Apache2 將測試HTML文件放在
/var/www/html文件夾中。當您從網絡上的另一台計算機瀏覽 Raspberry Pi IP 或在Raspberry Pi 本機訪問http://localhost時,將提供此默認網頁。【圖】
-
更改默認網頁,詳見后文。
2. 安裝 PHP
-
下載 PHP
sudo apt-get install php -
這里注意你下載的 PHP 版本。
3. 安裝 MariaDB
-
下載 mariadb-server
sudo apt-get install mariadb-server -
為什么這里不下更常用的 MySQL 呢?
- MySQL 的確是世界上最流行的開源關系數據庫管理系統,但 MariaDB 是 Debian 10 中的默認數據庫系統, Mysql 並不包含在 Debian 的默認軟件存儲庫。MariaDB 是 Debian 中 MySQL 的默認替換方案。
- PHP 7 正式移除了 MySQL 擴展。這就是我們為什么要注意安裝 PHP 版本的原因。所以相比於去折騰這些,對於普通的學習者而言,並沒有什么太大的用處。
當然,你也可以通過其他方法下載 MySQL 。
-
登錄 MariaDB root 賬戶需要輸入 樹莓派 root 賬戶 密碼
sudo mysql -u root -p輸入 密碼:
yogile@debyogile:~$ sudo mysql -u root -p Enter password: -
設置 MariaDB 數據庫 root 賬戶 密碼,注意這個 root 賬戶與 樹莓派 root 賬戶 完全不同。
set password for 'root'@'localhost' =password('數據庫root用戶密碼'); -
再輸入命令以更新權限:
FLUSH PRIVILEGES; -
quit退出 MariaDB 。
三、 安裝 phpMyAdmin
(一) 樹莓派
1. 下載
sudo apt install phpmyadmin
2. 執行途中詢問事項
-
提示選擇服務器 :選擇 "apache2" 。

-
提示是否確定來配置 phpMyAdmin 管理的數據庫。
這里我們前面已經配置過了,選擇 "No" 。

-
如果之前沒配置,點 "Yes" ,將會詢問你:
-
設定 phpmyadmin 數據庫密碼:

-
重輸 phpmyadmin 數據庫密碼:

-
-
3. 創建軟鏈接
sudo ln -s /usr/share/phpmyadmin/ /var/www/html/
(二)Debian 10.3
1. 下載
-
由於以下原因:
沒有可用的軟件包 phpmyadmin,但是它被其它的軟件包引用了。 這可能意味着這個缺失的軟件包可能已被廢棄, 或者只能在其他發布源中找到我們在 Debian10.3 中無法直接通過命令行下載,可以通過軟件包下載。
-
以下有兩種方式下載軟件包:
-
wget 命令
wget https://files.phpmyadmin.net/phpMyAdmin/5.0.1/phpMyAdmin-5.0.1-all-languages.zip -
另一電腦在 phpMyAdmin 官網 下載,再通過 WinSCP 傳輸。
-
2. unzip 解壓
sudo unzip phpMyAdmin-5.0.1-all-languages.zip
3. 移動, 並將Web服務器用戶(www-data)作為此目錄的所有者
sudo mv phpMyAdmin-5.0.1-all-languages/ phpMyAdmin
sudo mv phpMyAdmin/ /usr/share/
sudo chown -R www-data:www-data /usr/share/phpmyadmin/
4. 建立軟連接
sudo ln -s /usr/share/phpmyadmin/ /var/www/html/
-
實現配置完成后,可以:
-
在本機通過
http://localhost/phpmyadmin,訪問 phpMyAdmin。 -
在同網段內其他機器上通過
http://<debian IP>/phpmyadmin訪問。
-
5. 加裝依賴
運行以下命令以安裝phpMyAdmin所需或推薦的PHP模塊:
sudo apt install php-imagick php-phpseclib php-php-gettext php7.3-common php7.3-gd php7.3-imap php7.3-json php7.3-curl php7.3-zip php7.3-xml php7.3-mbstring php7.3-bz2 php7.3-intl php7.3-gmp
以便后面操作無誤。
6. 重啟 Apache
輸入信息重啟 Apache 服務。
sudo /etc/init.d/apache2 restart
7. phpMyAdmin創建Apache配置
sudo vim /etc/apache2/conf-available/phpmyadmin.conf
-
如果要從子目錄訪問phpMyAdmin Web界面,請在
/etc/apache2/conf-avaiable/phpmyadmin.conf中輸入如下信息:# phpMyAdmin default Apache configuration Alias /phpmyadmin /usr/share/phpmyadmin <Directory /usr/share/phpmyadmin> Options SymLinksIfOwnerMatch DirectoryIndex index.php <IfModule mod_php5.c> <IfModule mod_mime.c> AddType application/x-httpd-php .php </IfModule> <FilesMatch ".+\.php$"> SetHandler application/x-httpd-php </FilesMatch> php_value include_path . php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/php/php-php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpmyadmin/:/usr/share/php/phpseclib/ php_admin_value mbstring.func_overload 0 </IfModule> <IfModule mod_php.c> <IfModule mod_mime.c> AddType application/x-httpd-php .php </IfModule> <FilesMatch ".+\.php$"> SetHandler application/x-httpd-php </FilesMatch> php_value include_path . php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/php/php-php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpmyadmin/:/usr/share/php/phpseclib/ php_admin_value mbstring.func_overload 0 </IfModule> </Directory> # Authorize for setup <Directory /usr/share/phpmyadmin/setup> <IfModule mod_authz_core.c> <IfModule mod_authn_file.c> AuthType Basic AuthName "phpMyAdmin Setup" AuthUserFile /etc/phpmyadmin/htpasswd.setup </IfModule> Require valid-user </IfModule> </Directory> # Disallow web access to directories that don't need it <Directory /usr/share/phpmyadmin/templates> Require all denied </Directory> <Directory /usr/share/phpmyadmin/libraries> Require all denied </Directory> <Directory /usr/share/phpmyadmin/setup/lib> Require all denied </Directory> -
:wq保存退出。
8. 啟用此配置文件
sudo a2enconf phpmyadmin.conf
-
這時,它提醒你:
Enabling conf phpmyadmin. To activate the new configuration, you need to run: systemctl reload apache2
9. 加載配置文件
sudo systemctl reload apache2
10. 重啟Apache
sudo /etc/init.d/apache2 restart
11. 防止出錯,更新數據庫 root 密碼
-
sudo mysql -u root -p -
設置 MariaDB 數據庫 root 賬戶 密碼,注意這個 root 賬戶與 樹莓派 root 賬戶 完全不同。
set password for 'root'@'localhost' =password('數據庫root用戶密碼'); -
再輸入命令以更新權限:
FLUSH PRIVILEGES; -
quit退出 MariaDB 。
四、網頁測試
在瀏覽其中,訪問 http://<Debian IP>/phpmyadmin 。
即可看到成功與否。
