Latest News

首頁 » PHP+MySQL+PHPMaker 整合程式設計 » 在 Debian 11 上安裝 Apache 網頁伺服器 PHP 程式 與 MariaDB 資料庫

在 Debian 11 上安裝 Apache 網頁伺服器 PHP 程式 與 MariaDB 資料庫

LAMP Stack 是一組通用的開源工具,用於託管網絡上的網站和應用程序。
LAMP Stack 是一個 Web 開發平台,使用 Linux 作為操作系統、Apache 作為 Web 服務器、MariaDB/MySQL 作為數據庫服務器、PHP 作為腳本語言。 它被廣泛使用,並提供了一套經過驗證的軟件來交付高性能 Web 應用程序。

在本教程中,我們將向您展示如何在 Debian 11 上安裝 LAMP Stack。

 

什麼是 LAMP?

LAMP 是 Linux、Apache、MySQL 和 PHP 的縮寫。
它是一組在網頁伺服器上工作以管理網站的應用程式。話雖如此,每個單獨的程式都有不同的目的:

在 LAMP 中,Linux充當伺服器的操作系統,處理機器上的所有命令。
Apache 是一種 網頁伺服器軟體,可管理 HTTP 請求以提供您網站的內容。
MySQL 是一個關係資料庫管理系統 (RDBMS),其功能是在伺服器上維護用戶的資料。
PHP 是一種用於伺服器端通信的執行語言。

 

先決條件:

      • 運行 Debian 11 的服務器。
      • 與您的服務器 IP 指向的有效域名。
      • 此時,LAMP Stack已安裝在您的伺服器中。 現在,您需要建立一個 Apache 虛擬主機配置檔案來託管任何應用程式。在這裡,我們將建立一個 example.com 目錄來託管 PHP 頁面。 您可以使用以下指令建立它:
      • 服務器上配置了 root 密碼。

 

安裝 Apache 網路伺服器

Apache Webserver 軟體包包括在 Debian 11 預設存儲庫中。 您只需運行以下指令即可安裝它:

apt-get install apache2 apache2-utils -y

安裝 Apache Web 服務器後,使用以下命令驗證已安裝的 Apache 版本:

apache2 -v

您應該看到以下輸出:

Server version: Apache/2.4.48 (Debian)
Server built:   2021-08-12T11:51:47

要啟動 Apache 服務,請運行以下命令:

systemctl start apache2

要啟用 Apache 服務以使其在系統引導時啟動,請運行以下命令:

systemctl enable apache2

您還可以使用以下命令檢查 Apache 的完整狀態:

apt-get install elinks
apache2ctl fullstatus

您應該看到以下輸出:

Apache Server Status for localhost (via ::1)

   Server Version: Apache/2.4.48 (Debian)

   Server MPM: prefork

   Server Built: 2021-08-12T11:51:47

   --------------------------------------------------------------------------

   Current Time: Tuesday, 17-Aug-2021 09:29:41 UTC

   Restart Time: Tuesday, 17-Aug-2021 09:29:33 UTC

   Parent Server Config. Generation: 1

   Parent Server MPM Generation: 0

   Server uptime: 7 seconds

   Server load: 0.05 0.01 0.00

   Total accesses: 0 - Total Traffic: 0 kB - Total Duration: 0

   CPU Usage: u.03 s.02 cu0 cs0 - .714% CPU load

   0 requests/sec - 0 B/second

   1 requests currently being processed, 4 idle workers

預設情況下,Apache 運行在 80 埠,您可以使用以下指令檢查它:

SS-antpl |  grep apache2

您應該得到以下輸出:

LISTEN 0      511                *:80              *:*    users:(("apache2",pid=44022,fd=4),("apache2",pid=44021,fd=4),("apache2",pid=44020,fd=4),("apache2",pid=44019,fd=4),("apache2",pid=44018,fd=4),("apache2",pid=44017,fd=4))

您還可以通過瀏覽 URL http://your-server-ip 檢查 Apache 安裝。 您應該在以下屏幕上看到 Apache 測試頁面:

Debian 默認頁面

安裝 MariaDB 資料庫伺服器

MariaDB 是一個資料庫管理系統,用於存儲和管理您網站的資料。 您可以使用以下指令安裝它:

apt-get install mariadb-server -y

安裝 MariaDB 後,啟動 MariaDB 服務並使其在系統啟動時使用以下命令啟動:

systemctl start mariadb
systemctl enable mariadb

您還可以使用以下命令檢查 MariaDB 服務的狀態:

systemctl status mariadb

您應該看到以下輸出:

? mariadb.service - MariaDB 10.3.31 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-08-21 04:13:25 UTC; 1min 36s ago
       Docs: man:mysqld(8)
             https://mariadb.com/kb/en/library/systemd/
   Main PID: 1838 (mysqld)
     Status: "Taking your SQL requests now..."
      Tasks: 31 (limit: 2353)
     Memory: 66.1M
     CGroup: /system.slice/mariadb.service
             ??1838 /usr/sbin/mysqld

還建議保護您的 MariaDB 安裝並設置 MariaDB root 密碼。 您可以運行 mysql_secure_installation 腳本來保護 MariaDB 安裝:

mysql_secure_installation

系統將要求您設定 MariaDB root 密碼、刪除匿名使用者、禁止 root 遠端登入並刪除測試資料庫,如下所示:

輸入 root 的當前密碼(不輸入): 
 修改root密碼?  [是/否] 是
 新密碼: 
 重新輸入新的密碼: 
 刪除匿名用戶?  [是/否] 是
 禁止遠程root登錄?  [是/否] 是
 刪除測試數據庫並訪問它?  [是/否] 是
 現在重新加載權限表?  [是/否] 是

ss -antpl | grep mariadb

您應該看到以下命令:

LISTEN 0      80         127.0.0.1:3306      0.0.0.0:*    users:(("mariadbd",pid=12181,fd=15))

要連接 MariaDB shell,請運行以下命令:

mysql -u root -p

提供您的 MariaDB root 密碼並按 Enter 鍵連接到 MariaDB shell。 連接後,您應該看到以下輸出:

Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 64
Server version: 10.5.11-MariaDB-1 Debian 11

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

現在,運行以下命令來檢查 MariaDB 版本:

MariaDB [(none)]> SELECT VERSION();

您應該看到以下輸出:

+-------------------+
| VERSION()         |
+-------------------+
| 10.5.11-MariaDB-1 |
+-------------------+
1 row in set (0.001 sec)

安裝 PHP 處理語言

PHP 是用於在 Web 伺服器上為 PHP 應用程式提供服務的處理語系。 預設情況下,Debian 11 中可用的 PHP 版本是 PHP 7.4。 您可以使用以下指令安裝 PHP 和其他常用擴展:

apt-get install php libapache2-mod-php php-cli php-mysql php-zip php-curl php-xml -y

安裝 PHP 後,使用以下命令驗證 PHP 版本:

php-v

您應該看到以下輸出:

PHP 7.4.21 (cli) (built: Jul  2 2021 03:59:48) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.21, Copyright (c), by Zend Technologies

為 Apache 建立虛擬主機

mkdir /var/www/html/example.com

接下來,將 example.com 目錄的所有權設置為 www-data:

chown -R www-data:www-data /var/www/html/example.com

接下來,使用以下命令創建 Apache 虛擬主機配置文件:

vi /etc/apache2/sites-available/example.com.conf

添加以下行:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName example.com
    DocumentRoot /var/www/html/example.com
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

儲存並關閉檔案,然後使用以下指令啟動 example.com 虛擬主機並禁用預設虛擬主機:

a2ensite example.com.conf
a2dissite 000-default

接下來,使用以下命令驗證虛擬主機文件是否存在任何語法錯誤:

apache2ctl configtest

如果一切正常,您應該看到以下輸出:

Syntax OK

最後,重新啟動 Apache 服務以應用配置變更:

systemctl reload apache2

您還可以使用以下命令檢查 Apache 服務的狀態:

systemctl status apache2

您應該看到以下輸出:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-08-21 04:13:30 UTC; 2min 56s ago
       Docs: https://httpd.apache.org/docs/2.4/
   Main PID: 2257 (apache2)
      Tasks: 55 (limit: 2353)
     Memory: 5.3M
     CGroup: /system.slice/apache2.service
             ??2257 /usr/sbin/apache2 -k start
             ??2259 /usr/sbin/apache2 -k start
             ??2260 /usr/sbin/apache2 -k start

Aug 21 04:13:30 debian11 systemd[1]: Starting The Apache HTTP Server...
Aug 21 04:13:30 debian11 apachectl[2246]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 216.9>
Aug 21 04:13:30 debian11 systemd[1]: Started The Apache HTTP Server.

驗證 Apache 上的 PHP 安裝

接下來,您需要建立一個示例 PHP 檔案以通過 Apache Web 伺服器提供服務。
建立 phpinfo.php 您可以在 example.com 目錄中 檔案:

vi /var/www/html/example.com/phpinfo.php

添加以下行:

<?php phpinfo();  ?>

保存並關閉文件,然後打開 Web 瀏覽器並使用 URL http://example.com/phpinfo.php 訪問 PHP 頁面。
您應該在以下屏幕上看到您的 PHP 頁面:

Debian 11 上的 PHP

結論:

在上面的指南中,我們解釋瞭如何在 Debian 11 上安裝 LAMP 堆棧。
您現在可以開始使用 LAMP 堆棧託管您的第一個網站。

關於

發佈留言


【網路技術密訓基地】莫忘記初衷! (堅持!直到成功!)

【洪總教頭】曾說:過去的理念已經實現的叫做:【成就】,而還未實現的就叫:【夢想】!我們從來沒因已有的【成就】而放棄【夢想】!
唯有你我知道的秘密,就不可能到處去說給別人聽,因為:到處宣揚的就不叫做【密技】!

E-Mail:ster168ster@gmail.com