在本文中,我們將逐步指導如何在執行 Linux 的伺服器上設定 Web 環境。首先,您需要了解典型的 Web 伺服器由幾個互動的元件組成:
- HTTP服務器
- 程式語言解釋器
- 數據庫管理系統(DBMS)
要管理您的網站,您還需要設定內容管理系統 (CMS)、用於資料庫管理的 Web 介面和 FTP 存取。
讓我們考慮在 Linux 上設定一個非常流行的設定 Apache-PHP-MySQL(MariaDB)。我們還將安裝 vsftpd ftp 伺服器、phpMyAdmin(用於資料庫管理的 Web 介面)和內容管理系統 WordPress。
首先請 訂購 VPS 伺服器 or 專用服務器。例如,我們使用執行 Ubuntu Server 18.04 的具有靜態 IP 位址的虛擬伺服器。所有命令均由 root 使用者執行。
Apache HTTP 伺服器配置
1。 安裝
apt install apache2
安裝完成後,打開瀏覽器並檢查 “http://[伺服器的 ip 位址]”

如果您在上面的螢幕截圖中看到這樣的歡迎頁面,則表示您的 HTTP 伺服器正在正常運作。
2. 建立測試頁面
網站的預設根目錄是 “/var/www/html”。您可以在這裡找到剛剛看到的歡迎頁面。讓我們建立一個單獨的目錄 “/var/www/sites” 用於虛擬主機和子資料夾 “/var/www/sites/site1” 與您的測試網站的索引頁一起。
cd /var/www/ mkdir -p sites/site1 echo "<H1>Welcome</H1>" > sites/site1/index.html
結果文件 “/var/www/sites/site1/index.html” 應該只包含一行 html 程式碼:
<H1>Welcome</H1>
3.Apache 伺服器配置
網站的設定檔位於 “/etc/apache2/sites-available/” 目錄。讓我們為新的虛擬主機建立一個配置文件,並從文件中採用預設配置 “000-預設.conf” 作為基礎。
cd /etc/apache2/sites-available/ cp 000-default.conf site1.conf
打開文件 “site1.conf” 並改變 “DocumentRoot” 屬性。將你的網站路徑作為值,所以在我們的例子中是 “/var/www/sites/site1”

現階段我們不需要配置多個網站同時運行,所以我們可以停用預設網站並啟用新網站。重新載入伺服器配置以套用變更。
a2dissite 000-default a2ensite site1 systemctl reload apache2
打開鏈接 “http://[伺服器的 _ip_address]” 再次確保我們有新頁面而不是預設歡迎頁面。

我們完成了 HTTP 伺服器的配置,可以繼續下一步。
FTP 伺服器配置
1。 安裝
讓我們安裝 ftp 伺服器和一個附加包 “db-util”,我們需要設定虛擬用戶
apt install vsftpd db-util
2. 建立本地帳戶
vsftpd 伺服器允許我們以非常靈活的方式配置存取權限。對於我們的任務,我們需要向 ftp 用戶提供以下內容:
- 完全存取內容 “/var/www/sites/”;
- 禁用以上所有內容 “/var/www/”;
- 與虛擬帳戶的連接;
建立本機帳戶 “虛擬的” 沒有登入權限但可以存取主資料夾 “/var/www/”。 ftp 用戶將使用此帳戶連接伺服器
useradd -d /var/www virtual
“根” 將成為 “/var/www” 預設資料夾。為了讓 ftp 使用者能夠修改網站的內容,讓我們更改 “/var/www/sites/” 包括子資料夾 “虛擬的”.
chown -R virtual:root /var/www/sites
因此,用戶 “虛擬的” 將能夠看到的內容 “/var/www/” 並寫入 “/var/www/sites/” 子文件夾。
3。 組態
主要配置在檔案中 “/etc/vsftpd.conf”,因此我們打開它並進行如下編輯:
#enable virtual users anonymous_enable=NO local_enable=YES guest_enable=YES guest_username=virtual
#configure permission write_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES anon_world_readable_only=NO anon_umask=0022 chroot_local_user=YES
#launch settings listen=YES pasv_min_port=30000 pasv_max_port=30999
4.建立資料庫
您將需要一個資料庫來儲存虛擬帳戶的資料。
首先,讓我們建立一個簡單的文字文件 “用戶.txt” 在主資料夾中,並將虛擬使用者的存取詳細資料(登入名稱和密碼)儲存到每隔一行。例如,我們需要一個具有以下登入的虛擬用戶 “ftp” 和密碼 “Qwe123”。然後文件將如下所示:
ftp Qwe123
讓我們建立資料庫
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
讓我們修改預設的 PAM 文件 “/etc/pam.d/vsftp” 如下所示:
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
請注意 “pam_userdb.so” 庫可能不同,但您可以根據需要進行更改。
重新載入 vsftpd 伺服器以套用變更。
systemctl restart vsftpd
我們完成了 FTP 伺服器的設定。
連接詳細資訊:
- ftp://[伺服器的 IP 位址]
- 登入:ftp
- 密碼:Qwe123
PHP 伺服器配置
1. PHP 的安裝
如今,PHP 的最新穩定版本是 php 7.4.5,它不包含在官方 Ubuntu 儲存庫中。讓我們連接第三方儲存庫並安裝最新版本的 PHP。
apt update apt install software-properties-common add-apt-repository ppa:ondrej/php apt update apt install php7.4
2。 檢查
為了執行 PHP,網頁檔案應該要有 “.php” 擴大。讓我們重命名測試頁面:
cd /var/www/sites/site1/ mv index.html index.php
將以下 php 行新增至文件 “/var/www/sites/site1/index.php”,因此文件看起來應該像這樣:
<H1>Welcome</H1> <?php phpinfo(); ?>
儲存變更並在瀏覽器中檢查結果。

如果你看到函數的結果 “phpinfo()”,PHP解譯器運作正常。現在我們進行下一步。
MySQL(MariaDB)配置
1。 安裝
讓我們安裝 MariaDB 和 MySQL 的 PHP 模組,然後重新載入 Apache。
apt install mariadb-server php-mysql systemctl restart apache2
重新整理測試頁面,進入PHP設定表的PDO部分。如果你能找到 “PDO_mysql”,則表示Mysql的驅動安裝正確。

然後我們需要對 MariaDB 進行初始安全性配置,並設定 “根” 用戶,停用遠端存取並刪除所有訪客帳戶。
mysql_secure_installation
第一步,我們必須輸入 “根” 使用者密碼來存取 DBMS,如果沒有密碼,請按 Enter。由於沒有設定密碼 “根” 用戶安裝後,只需按 “輸入”.
請注意,MariaDB 中已經有自己的帳戶,與作業系統帳戶無關。因此我們在 MariaDB 中處理的唯一用戶是 “根”.

之後,配置器將要求我們設定root用戶的密碼。類型 “ Y” 確認並輸入新密碼。在我們的例子中, “Qwe123”

回复 “ Y” 回答直到最後剩下的所有問題。
配置完成!
MariaDB 存取詳細資訊:
- 登入名:root
- 密碼:Qwe123
phpMyAdmin 配置
1。 安裝
讓我們安裝必要的 PHP 擴充功能 - MBSTRING.
apt install php-mbstring
在官方儲存庫中只有一個過時的 phpMyAdmin 版本,所以讓我們手動安裝新版本。
開啟專案官網“https://www.phpmyadmin.net/」並下載最新的檔案。

將檔案複製到伺服器 “/var/www/sites/” 使用任何 ftp 客戶端的資料夾。
取消存檔資料夾並將其重新命名為 “phpMyAdmin”。不要忘記安裝 “解壓縮” 公用事業。您可以在取消存檔後刪除該存檔。
apt install unzip cd /var/www/sites/ unzip phpMyAdmin-5.0.2-all-languages.zip mv phpMyAdmin-5.0.2-all-languages phpMyAdmin rm phpMyAdmin-5.0.2-all-languages.zip
建立以下資料夾 “/var/www/sites/phpMyAdmin/tmp” 用於臨時文件並允許所有人存取。如果您不這樣做,phpMyAdmin 將報告對臨時資料夾的存取被拒絕。
cd /var/www/sites/phpMyAdmin/ mkdir tmp chmod 777 tmp
2. 建立別名
由於phpMyAdmin不是單獨的虛擬主機,並且位於根目錄之外,因此我們來設定別名。
打開文件 “/etc/apache2/mods-available/alias.conf” 並新增以下行:
Alias /pma “/var/www/sites/phpMyAdmin"
在這一部分中:
<IfModule alias_module> </IfModule>

重新載入 Apache 以套用變更。
systemctl reload apache2
別名已設置,因此我們可以在這裡訪問 phpMyAdmin “http://[伺服器的 ip 位址]/pma”。
3.準備資料庫
由於我們在 MariaDB 的初始配置期間限制使用 root 用戶,因此我們必須建立一個具有所有權限的新帳戶,用於存取 phpMyAdmin。
此外,為了啟用 phpMyAdmin 的附加功能,我們需要一個服務資料庫和一個存取帳戶。
讓我們建立帳戶
mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit
請注意,第二個請求中的資料庫名稱在 back sparks “… ON `phpmyadmin`.* 發送至‘pma’@‘localhost’,識別為…”,
結果將在 MariaDB 中建立兩個帳戶:
- 登入權限:pma,密碼:Qwe123 完全存取權限,將用於登入 phpMyAdmin
- 登入名稱:pmaservice,密碼:Qwe123 需要服務帳戶才能使用附加功能
下一步,我們將在配置文件中設置這些詳細信息 “config.inc.php”.
然後我們需要從檔案匯入資料庫 “phpMyAdmin/sql/create_tables.sql”.
讓我們在 phpMyAdmin 的幫助下導入它。
打開鏈接 “http://[伺服器的 ip 位址]/pma”
輸入登入名 “pma” 和密碼 “Qwe123”
造訪 “進口”點擊此處成為Trail Hunter “選擇檔案” 並選擇文件 ”sql/create_tables.sql” 在 phpMyAdmin 的根目錄中。這應該是你電腦上的資料夾 “phpMyAdmin” 帶有文件。如果有必要的話,取消存檔。

每填寫完資料或做任何更動請務必點擊 “下一個” 開始導入。
4。 組態
我們從模板複製配置文件
cd /var/www/sites/phpMyAdmin/ cp config.sample.inc.php config.inc.php
讓我們打開設定檔 “/var/www/sites/phpMyAdmin/config.inc.php” 並做以下更改:
為該屬性設定一個隨機的 32 個字元的值 “$cfg['blowfish_secret']”。使用任何密碼產生器..

刪除所有行的註釋 “phpMyAdmin 設定儲存設定” 部分並設定 MariaDB 服務帳戶的登入名稱和密碼 “控制用戶” “控制通行證” 屬性。在我們的例子中, 服務 Qwe123.

保存更改。
phpMyadmin 的訪問詳細資訊:
- http://[server’s_ip_address]/pma/
- 登入名稱:pma
- 密碼:Qwe123
如何在 Linux 伺服器上安裝和設定 WordPress
1. WordPress 軟體包和文件放置
前往WP官方網站“https://ru.wordpress.org/」並將檔案下載至本地電腦。
將檔案上傳到伺服器 “/var/www/sites/” 資料夾並將其解壓縮到 「 WordPress的“文件夾。
複製 “/var/www/sites/wordpress/” 根資料夾 “/var/www/sites/site1/” 網站。
由於我們透過具有 root 權限的控制台複製了文件,因此讓我們更改 “/var/www/sites/” 資料夾包含以下內容 “虛擬的”。這是透過客戶端啟用 ftp 連線的完全存取權所必需的。
cd /var/www/sites/ tar -xzvf wordpress-5.4-ru_RU.tar.gz cp -R wordpress/* site1/ chown -R virtual:root /var/www/sites
2.為 WordPress 建立資料庫
登入phpMyAdmin並點擊「建立資料庫」。指定任意資料庫名稱,在我們的範例中為“wordpress_db”,然後按一下“建立”按鈕。

在左側部分選擇新資料庫並點擊 “特權”

然後點擊 “新增使用者帳號”.
輸入登入名稱和密碼(服務 / Qwe123)在開啟的視窗中,檢查 “授予 wordpress_db 中的所有權限” 並點擊 “下一個”

在下一頁點擊 “全部取消” 重置資料庫層級的所有權限並點擊 “下一個”.

3. Linux 伺服器上的 WordPress 配置
前往網站的根目錄並從模板複製配置文件
cd /var/www/sites/site1/ cp wp-config-sample.php wp-config.php
打開 “wp-config.php” 文件並輸入我們在上一步創建的資料庫連接參數並保存更改。

4. 安裝 CMS WordPress
在瀏覽器中開啟以下連結 “http://[伺服器的 ip 位址]/wp-admin/install.php”.
填寫所有欄位並點擊 “安裝 WordPress”。設定隨機使用者名稱和密碼。在我們的例子中, 管理員 Qwe123 因此。
這些詳細資訊將用於存取 WordPress。

安裝完成後,打開鏈接 “http://[伺服器的 ip 位址]/wp-login.php”,輸入訪問詳細信息,然後登入WordPress。

您應該在主頁上看到其中一個 WordPress 模板。

配置已完成。
WordPress 存取詳細資訊:
- http://[server’s_ip_address]/wp-login.php
- 登入名稱:wpadmin
- 密碼:Qwe123