靜態網站如何在 Ubuntu 設置 Apache2 網站伺服器

在這邊做一個紀錄,避免每次部署的時候還要找谷歌大神。

Apache Web 網站伺服器是一個相當主流的網站部署方式,它把配置很清楚的獨立開來,接下來這篇會引導你如何在 Ubuntu 設置 Apache2 網站伺服器部署。在 Apache2 部署,主要目錄會使用 apache 的 sites-availablesites-enable

網站編譯後打包

首先到網站進入根目錄 /my_web_site 之後執行以下的指令,進行打包的操作

1
$ npm run build

這時候會產生 dist 資料夾之後,利用 pwd 找到這個資料夾, 顯示路徑是 /home/cube/my_web_site/dist

編輯 “sites-available” 內的設定檔

/etc/apache2/sites-available 在可用的組態檔案資料夾裡面先複製一份範本,命名為另一個檔案 my_web_site.conf

1
$ sudo cp 000-default.conf my_web_site.conf

多了一份設定檔之後,編輯設定檔案 my_web_site.conf

1
$ sudo vi my_web_site.conf

修改檔案如下

1
2
3
4
5
6
<VirtualHost *:8001>
ServerAdmin webmaster@localhost
DocumentRoot DocumentRoot /home/cube/my_web_site/dist
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
  • 改 VirtualHost 的 port,比如我改成 :8001
  • 找到 DocumentRoot 改剛剛編譯出來的檔案路徑 /home/cube/my_web_site/dist

其他項目不需要改,完成之後就把這個 conf 檔案存下來

從 “sites-enabled” 建立連結

接著到 /etc/apach2/sites-enable 加入快速連結,讓這份設定檔做啟用

1
$ sudo ln -s /etc/apache2/sites-available/my_web_site.conf /etc/apache2/sites-enabled/my_web_site.conf

重新啟動 Apache2

最後改好的設定,要將網站伺服器做重啟!
找到在路徑底下的 /etc/init.d ,確定有 apache2 服務
在完成修改之後,請務必要重新啟動 Apache,那麼這樣才會把變更的組態檔案載入系統裡。

1
$sudo service apache2 restart

接著會得到類似的訊息,寫了一個 [OK] ,那麼這樣設置就完成了喔。

1
2
* Restarting web server apache2                                                             AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message
[ OK ]

測試你的結果

最後剛剛網站指定端口為 8001 ,連結網址是 http://<domain.name.com>:8001/,就會出現你的靜態網站囉。

參考