天天看點

apache http可以通路https沒權限_如何在 Ubuntu 20.04 上安裝 Apache

apache http可以通路https沒權限_如何在 Ubuntu 20.04 上安裝 Apache

本文最先釋出在:

如何在 Ubuntu 20.04 上安裝 Apache​www.itcoder.tech

Apache 是世界上最流行的網站伺服器之一。它是開源并且跨平台的 HTTP 伺服器,它托管了網際網路上大量的網站。Apache 提供了很多強大的功能,并且可以擴充其他的子產品。

這篇文章描述了如何在 Ubuntu 20.04 上安裝和管理 Apache 網站伺服器。

一、前提條件

在開始這個指南之前,確定你以 sudo 權限使用者身份登入。

二、安裝 Apache

Apache 被包含在預設的 Ubuntu 軟體源中。

安裝非常直接。在 Ubuntu 和 Debian 系統中,Apache 軟體包和服務被稱為

apache2

運作下面的指令來更新軟體包索引,并且安裝 Apache:

sudo apt update
sudo apt install apache2
           

當安裝過程完成,Apache 服務将會被自動啟動。

你可以通過輸入下面的指令,驗證 Apache 是否正在運作:

sudo 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 2020-05-09 19:28:40 UTC; 36min ago
...
           

就這些,你已經成功地在你的 Ubuntu 20.04上安裝了 Apache,你可以開始使用它了。

三、打開 HTTP 和 HTTPS 端口

Apache 監聽了端口

80

(HTTP)和

443

(HTTPS)。你需要在防火牆打開那些端口,以便網站伺服器從網際網路上是可以通路的。

假設你正在使用

UFW

,你可以通過啟用

Apache Full

配置,它包含了這兩個端口的規則:

sudo ufw allow 'Apache Full'
           

驗證改變:

sudo ufw status
           

輸出如下:

Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
Apache Full                ALLOW       Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
Apache Full (v6)           ALLOW       Anywhere (v6)
           

四、驗證 Apache 安裝

想要驗證一切都順利工作,打開你的浏覽器,輸入伺服器 IP 位址

http://YOUR_IP_OR_DOMAIN/

,你可以看到預設的 Ubuntu 20.04 Apache 歡迎頁面,像下面這樣:

apache http可以通路https沒權限_如何在 Ubuntu 20.04 上安裝 Apache

這個頁面包含了 Apache 配置檔案,幫助腳本和檔案夾位置的一些基本資訊。

五、設定一個虛拟主機

一個虛拟主機,是一個 Apache 配置指令,它允許你在一個伺服器上運作多個網站。典型的例子,一個虛拟主機描述了一個網站。

Apache 預設啟動了一個虛拟主機。所有域名都指向伺服器 IP 位址,比對了預設的虛拟主機。如果你隻托管一個簡單的網站,你需要将網站内容上傳到

/var/www/html

,并且編輯虛拟主機配置,

/etc/apache2/sites-enabled/000-default.conf

檔案。

如果你想托管更多網站,你需要為每一個網站建立一個虛拟主機配置。在這一節,我們将會為一個域名"http://example.com"設定網站。你可能需要将"http://example.com"替換成你自己的域名。

第一步就是建立根目錄檔案夾,域名的網站檔案将會被存放在這裡并且響應使用者請求。運作下面的指令,建立這個檔案夾:

sudo mkdir -p /var/www/example.com
           

為了測試目的,在域名根檔案夾下建立一個

index.html

檔案:

<!DOCTYPE html>
<html  dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Welcome to example.com</title>
  </head>
  <body>
    <h1>Success! example.com home page!</h1>
  </body>
</html>
           

當你做完時,儲存并且關閉檔案。

想要避免權限問題,修改域名根檔案夾的使用者歸屬為apache 使用者(

www-data

):

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

下一步就是為域名“example.com”建立一個虛拟主機配置。最佳實踐就是将每一個虛拟主機配置存儲成一個獨立的檔案。

Apache虛拟主機配置檔案存儲在

/etc/apache2/sites-available

目錄。标準命名是使用域名來命名配置檔案。

打開你的文本編輯器,并且建立下面的檔案

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

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    ServerAdmin [email protected]
    DocumentRoot /var/www/example.com/public_html

    <Directory /var/www/example.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/example.com-error.log
    CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined
</VirtualHost>
           

Apache 不會讀取

/etc/apache2/sites-available

檔案夾下的配置檔案,除非它們被連結到

/etc/apache2/sites-enabled

檔案夾。

想要激活虛拟主機配置,使用

a2ensite

建立一個連結:

sudo a2ensite example.com
           

測試配置檔案,是否有任何文法錯誤:

sudo apachectl configtest
           

如果沒有任何錯誤,你将會看到下面的輸出:

Syntax OK
           

重新開機 Apache 服務,使修改生效:

sudo systemctl restart apache2
           

最終,想要驗證一切都按照預期工作,在你的浏覽器中打開

http://example.com

,你将會看到類似下面的圖檔:

apache http可以通路https沒權限_如何在 Ubuntu 20.04 上安裝 Apache

六、總結

我們向你展示如何在 Ubuntu 20.04 上安裝 Apache。你現在已經準備好部署你的應用,并且将 Apache 用作網站或者代理伺服器了。

如果你有任何疑問,請通過以下方式聯系我們:

微信: sn0wdr1am86

apache http可以通路https沒權限_如何在 Ubuntu 20.04 上安裝 Apache

微信群: 加上面的微信,備注微信群

QQ: 3217680847

apache http可以通路https沒權限_如何在 Ubuntu 20.04 上安裝 Apache

QQ 群: 82695646

apache http可以通路https沒權限_如何在 Ubuntu 20.04 上安裝 Apache
apache http可以通路https沒權限_如何在 Ubuntu 20.04 上安裝 Apache

繼續閱讀