LAMP,在Ubuntu 20.04上安裝Apache,MariaDB和PHP

關於在Ubuntu 20.04上安裝LAMP

在下面的文章中,我們將研究如何在Ubuntu 20.04 LTS上安裝LAMP。 它是一組捆綁的軟件工具。 LAMP代表Linux,Apache,MariaDB / MySQL和PHP,所有這些都是開源的,可以免費使用。 它是為動態網站和Web應用程序提供支持的最常見的軟件堆棧。

Linux是操作系統,Apache是​​Web服務器,MariaDB / MySQL是數據庫服務器,PHP是負責生成動態網頁的服務器端腳本語言。 要遵循以下幾行,必須有一個操作系統 在本地計算機或遠程服務器上運行的Ubuntu 20.04.

在Ubuntu 20.04上安裝LAMP

在安裝LAMP堆棧之前,這是一個好主意 更新存儲庫和可用軟件包。 我們將在終端中執行此操作(Ctrl + Alt + T):

sudo apt update; sudo apt upgrade

安裝Apache Web服務器

在終端中輸入以下命令(Ctrl + Alt + T),以 安裝Apache Web服務器:

LAMP中的Apache安裝

sudo apt install -y apache2 apache2-utils

安裝完成後, Apache應該自動啟動。 我們可以通過以下方式驗證這一點:

apache2狀態

systemctl status apache2

我們也可以 檢查Apache版本:

LAMP中安裝的Apache版本

apache2 -v

現在 在瀏覽器的地址欄中輸入Ubuntu 20.04服務器的公共IP地址。 您應該看到啟動網頁,這意味著Apache Web服務器正在正確運行。 如果要在本地Ubuntu 20.04計算機上安裝LAMP,請在地址欄中鍵入127.0.0.1或localhost 瀏覽器.

在瀏覽器中運行的apache2

如果連接被拒絕或未完成,則我們可能具有防火牆來阻止對TCP端口80的傳入請求。 如果您使用 iptables 防火牆,您必須運行以下命令以打開TCP端口80:

sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT

如果您使用的是防火牆 UFW,執行命令打開TCP端口80:

sudo ufw allow http

現在我們需要 設置www-data(Apache用戶)作為網絡根目錄的所有者。 我們將通過編寫以下代碼來實現:

sudo chown www-data:www-data /var/www/html/ -R

安裝MariaDB數據庫服務器

MariaDB是MySQL的直接替代品。 將以下命令寫入 安裝 MariaDB的 在Ubuntu 20.04上:

在LAMP中安裝maridb服務器

sudo apt install mariadb-server mariadb-client

安裝後,MariaDB服務器應自動運行。 我們將可以 檢查你的狀態 使用命令:

mariadb飛行狀態

systemctl status mariadb

如果它沒有運行, 我們將通過寫作來開始:

sudo systemctl start mariadb

允許MariaDB在啟動時自動啟動,我們必須執行:

sudo systemctl enable mariadb

檢查 MariaDB服務器版本:

LAMP中安裝的mariadb版本

mariadb --version

現在 運行安裝後的安全腳本:

sudo mysql_secure_installation

當您要求我們輸入MariaDB根密碼時, 脈衝 簡介 由於尚未設置root密碼。 然後輸入您的MariaDB服務器根密碼。

mysql_password安全

然後 我們可以按 簡介 回答所有剩餘的問題。 這將刪除匿名用戶,禁用遠程root登錄,並刪除測試數據庫。

MariaDB中的mysql安全配置問題

默認, Ubuntu中的MaraiDB軟件包使用 unix_socket 驗證用戶登錄.

安裝PHP7.4

在撰寫本文時,PHP7.4是PHP的最新穩定版本。 為此,我們將編寫以下命令來 安裝PHP7.4和一些常見的PHP模塊:

在LAMP中安裝php 7.4

sudo apt install php7.4 libapache2-mod-php7.4 php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline

現在我們必須這樣做 激活Apache php7.4模塊並重新啟動Apache Web服務器.

啟用php7.4模塊

sudo a2enmod php7.4

sudo systemctl restart apache2

我們可以 檢查PHP版本 使用命令:

LAMP中安裝的php版本

php --version

要使用Apache服務器測試PHP腳本, 我們需要在根目錄中創建一個info.php文件:

sudo vim /var/www/html/info.php

在文件內,我們將粘貼以下PHP代碼:

<?php phpinfo(); ?>

保存文件後,現在必須在瀏覽器的地址欄中輸入以下內容: ip地址/ info.php. 用您當前的IP替換ip-address。 如果您使用的是本地計算機,請鍵入 127.0.0.1 / info.php的 o localhos / info.php。 這應該顯示PHP信息。

本地主機phpinfo.php

使用Apache運行PHP-FPM

我們將找到兩種在Apache Web服務器上運行PHP代碼的方法。 使用PHP Apache模塊和PHP-FPM。

在上述步驟中,Apache PHP7.4模塊用於處理PHP代碼。 這通常很好,但是 在某些情況下,我們必須使用 PHP-FPM。 去做吧, 我們將不得不禁用Apache PHP7.4模塊:

在LAMP中禁用Apache php7.4

sudo a2dismod php7.4

現在讓我們 安裝PHP-FPM:

在LAMP中安裝php7.4-fpm

sudo apt install php7.4-fpm

我們繼續 啟用proxy_fcgi和setenvif模塊:

啟用proxy_fcgi setenvif

sudo a2enmod proxy_fcgi setenvif

下一步將是 啟用配置文件 /etc/apache2/conf-available/php7.4-fpm.conf:

命令啟用a2enconf php7.4

sudo a2enconf php7.4-fpm

那我們必須 重新啟動Apache:

sudo systemctl restart apache2

現在,如果您刷新頁面 info.php的 在瀏覽器中,您會發現 服務器API從Apache 2.0 Handler更改為FPM / FastCGI,這意味著Apache Web服務器會將請求從PHP傳遞到PHP-FPM。

FPM-FastCGI啟用

為了完成並確保服務器的安全性,我們必須 刪除info.php文件.


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   弗拉基米爾·科齊斯克(Vladimir Kozisck) 他說:

    非常感謝您的指導,它為我提供了很多幫助,一切都還不錯...問候

  2.   巴勃羅 他說:

    簡潔明了的指南

    謝謝

  3.   約雷德特 他說:

    非常好,直到最後我都禁用了apache服務器來解釋.php文件。 浪費時間

    1.    達米安·A。 他說:

      你好。 您不重新啟動apache嗎?

  4.   跳汰機 他說:

    “完美”指南。
    太謝謝了。

  5.   伊西德羅 他說:

    這些步驟是正確的,但需要對 mysql root 用戶進行更多測試。 info.php 文件對我不起作用