如何在Ubuntu 18.04上安裝和配置Apache 2 Web伺服器
什麼是Apache Web Server?
Apache或Apache HTTP伺服器是一個免費的開源Web伺服器,由Apache軟體基金(Apache Software Foundation)開發和維護。它的受歡迎程度可以通過以下事實來判斷:全球約有46%的網站由Apache提供支援。 Apache允許網站開發人員通過網路提供他們的內容。
在Ubuntu Linux上安裝Apache 2
請按照以下步驟通過Ubuntu官方儲存庫安裝Apache2軟體。
第1步:更新系統儲存庫
您可以通過首先更新Ubuntu儲存庫的本地包索引來下載最新版本的軟體。開啟終端並輸入以下命令以執行此操作:
步驟2:使用apt命令安裝Apache 2
接下來,輸入以下命令作為sudo,以便安裝Apache2及其所需的依賴項:
系統可能會提示您使用y / n選項繼續安裝。 請輸入Y,然後安裝程式將開始。
第3步:驗證Apache安裝
安裝完成後,您可以檢查版本號,從而通過輸入以下命令驗證系統上是否確實安裝了Apache2:
輸出如下:
Server version: Apache/2.4.29 (Ubuntu)
Server built: 2018-10-10T18:59:25
配置UFW防火牆
為了配置Apache,我們首先需要允許外部訪問我們系統的某些Web埠,並在您的UFW防火牆上允許Apache。
第1步:列出UFW應用程式配置檔案
為了配置防火牆,讓我們首先列出我們啟用Apache訪問所需的應用程式配置檔案。 使用以下命令列出此類可用應用程式:
輸出如下:
可用應用程式:
Apache
Apache Full
Apache Secure
CUPS
OpenSSH
Samba
在上面的輸出中,您可以看到三個Apache配置檔案都提供不同級別的安全性; Apache是一個提供最大限制但埠80仍處於開啟狀態的Apache。
步驟2:在UFW上允許Apache並驗證其狀態
在UFW上允許Apache將為網路流量開啟埠80,同時為伺服器提供最大的安全性。 請通過以下命令配置UFW以允許Apache:
UFW的狀態現在將在防火牆上顯示啟用Apache。
$ sudo ufw status
配置Apache Web伺服器
步驟1:驗證Apache服務是否正在執行
第一步是通過以下命令驗證Apache2服務是否在您的系統上啟動並執行:
狀態:active(running)驗證apache2服務是否正在執行。
第2步:驗證Apache是否正常執行並偵聽您的IP地址
您還可以通過從Apache伺服器請求頁面來驗證Apache是否正在執行。 為此,您可以使用伺服器的IP來訪問Apache登入頁面。
使用以下命令瞭解伺服器的IP:
然後在Web瀏覽器中逐個嘗試IP,如下所示:
http://server_IP
就我而言,http://192.168.182.188和http://172.16.43.1。 這樣做將顯示Ubuntu的以下Apache網頁,驗證Apache伺服器是否正常工作。
在Apache中設定虛擬主機
第1步:設定域名
預設情況下啟用的伺服器塊能夠提供來自 /var/www/html的文件。 但是,我們將在/var/www/建立一個目錄,保留預設目錄。
然後通過以下命令分配目錄的所有權:
現在讓我們建立一個索引頁面,如果Apache執行我們的域名,我們以後可以訪問它們進行測試。 通過Nano編輯器或任何您喜歡的文字編輯器建立HTML檔案。
為索引頁輸入以下HTML:
我們使用nano編輯器來建立HTML檔案。
您可以使用Ctrl + X將檔案儲存為nano,然後輸入Y並按Enter鍵。
Apache需要一個虛擬主機檔案來提供伺服器的內容。 已經建立了用於此目的的預設配置檔案,但我們將為自定義配置建立一個新配置檔案。
輸入域名的以下自定義配置詳細資訊:
我們正在使用nano編輯器來建立此.conf檔案。
您可以使用Ctrl + X將檔案儲存為nano,然後輸入Y並按Enter鍵。
步驟2:啟用域配置檔案
讓我們啟用使用a2ensite工具建立的配置檔案:
輸出將建議啟用新配置,但我們可以在執行以下禁用原始配置檔案的命令後集體執行此操作:
現在重啟Apache服務:
第3步:測試錯誤
最後,讓我們通過以下命令測試是否存在任何配置錯誤:
如果您沒有收到任何錯誤,您將獲得以下輸出:
Syntax OK
但是,Ubuntu 18.04中常見以下錯誤
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
Syntax OK
解決錯誤:
輸入以下命令以解決上述錯誤:
然後:
現在,當您再次檢查錯誤時,您將看到通過以下輸出解決了此錯誤:
Syntax OK
第4步:測試Apache是否為您的域名提供服務
Apache伺服器現在配置為提供您的域名。 這可以通過在系統上執行的任何Web瀏覽器中輸入您的伺服器名稱來驗證:
索引頁面應顯示如下,表示Apache現在已準備好為您的伺服器塊提供服務!
通過域名訪問您的網站
中文亂碼:
Apache 2網頁中文亂碼的解決方法:
修改charset.conf的AddDefaultCharset UTF-8,把AddDefaultCharset UTF-8前面的#去掉即可。
如下圖:
然後重啟apache2
再次開啟,OK,中文網頁亂碼解決了。
一些常見的Apache管理命令
設定Web伺服器後,您可能必須在Apache上執行一些基本的管理操作。 以下是您可以在終端應用程式中輸入的用於這些操作的命令。
sudo systemctl start apache2 //將此命令用作sudo以啟動Apache伺服器。
sudo systemctl stop apache2 //將此命令用作sudo,以便在Apache伺服器處於啟動模式時停止它。
sudo systemctl restart apache2 //將此命令用作sudo以便停止然後再次啟動Apache服務。
sudo systemctl reload apache2 //將此命令用作sudo,以便在不重新啟動連線的情況下應用配置更改。
sudo systemctl啟用apache2 //將此命令用作sudo,以便在每次啟動系統時啟用Apache。
sudo systemctl disable apache2 //將Apache設定為每次啟動系統時啟動
總結
通過本文,您學習瞭如何在Ubuntu系統上安裝和配置Apache Web伺服器。 這包括對您的UFW防火牆進行一些更改,然後為您的IP地址配置Web伺服器。 我們還建議您通過Apache設定虛擬主機; 這將為您提供如何使用Apache在Internet上託管檔案的基礎。 基本的Apache管理命令還可以幫助您作為Web管理員以最佳方式管理Web伺服器。