樹莓派/Debian 構建LAMP Web服務器並搭建WordPress博客(一)


一、前言

學習在您的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 是 DebianMySQL 的默認替換方案。
    • 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

即可看到成功與否。

五、搭建 WordPress 博客

請看下一篇 樹莓派/Debian 構建LAMP Web服務器並搭建WordPress博客(二)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM