來用Apache架設簡單WebServer吧

前言

本文安裝環境為 Ubuntu16.04

提供給初學想要用 Apache 架站的人做參考

會由安裝到 Apache 的細部設定依序說明

安裝Apache

  1. 安裝套件

sudo apt-get install apache2

  1. 確認安裝完成後啟動服務(兩個指令都行)

sudo systemctl start apache2

sudo systemctl start apache2

啟用後可以用以下兩個指令查看運作狀態

sudo service apache2 status

sudo systemctl status apache2

細部設定

個人首頁設定

  1. 啟用個人首頁

sudo a2enmod userdir

  1. 新增個人首頁的設定檔

    sudo nano /etc/apache2/mods-available/userdir.conf

  2. 確認防火牆開啟

    sudo iptables -t filter -L –n

  3. 重啟 Apache 服務

    sudo systemctl restart apache2.service

這時候在自己帳號的資料夾底下( 通常會是 […/使用者帳號/home/] )

建立 public_html 資料夾

mkdir public_html

並放上網頁檔案在網址列打上

電腦的ip / ~使用者名稱 / 檔案名稱

就能看到放上去的網頁了

放置網頁檔案的目錄

請更改以下檔案

sudo nano /etc/apache2/sites-enabled/000-default

找到 DocumentRoot 後面改成要改的目錄位置

網頁檔案名稱的設定

請更改以下檔案

sudo nano /etc/apache2/mods-available/dir.conf

找到 DirectoryIndex 後面改成要改的檔案名稱

可能會用到的指令

  • 查看 Apache 版本

apache2 -v

系統時區

  • 查看時區

    timedatectl

  • 設定時區

    sudo timedatectl set-timezone Asia/Taipei

  • 查看能設定時區的地區

    timedatectl list-timezones

內部防火牆

  • 啟用或停用狀態

    sudo ufw enable/disable

  • 啟用日誌

    sudo ufw logging on

  • 查看狀態及規則

    sudo ufw status

    sudo ufw status verbose

    sudo ufw status numbered #以數字排列目前防火牆規則

    sudo ufw delete 3 #刪除剛剛查看的第三條防火牆規則

    sudo ufw reset #清空防火牆所有已設置之規則

  • 查看需要開放的應用程式

    sudo ufw app list

  • 查看應用程式開放資訊

    sudo ufw app info “應用程式名稱”

    Ex :

    要開放 Apache 的通行請打

    sudo ufw allow in "Apache Full"

沒有實體機器的做法

請去下載 Virtualbox

裝好 Windows作業系統

  1. 開機前將網路介面卡設成 僅限主機的介面卡

  2. 開機後使用 終端機指令 查看enp0s3(或其他)位址

    ipconfig

​ 假設看到的ip為 192.168.56.102

  1. 更改C:\Windows\System32\drivers\etc\hosts 檔案內容

    預設要先把User權限打開才能編輯

    更改的內容如下

    hosts內容

  2. 在自己電腦瀏覽器輸入 http://192.168.56.102/http://guestserver.com/ 就能看到首頁

設定 NAT + Host-only 網卡

若虛擬機想要連上網路用 Host-only是不行的

需要設定第二張網卡 NAT

  • 查看網卡名稱

ip link

  • 更改網路設定檔

sudo nano /etc/network/interfaces

​ 更改內容如圖所示

interfaces內容

  • 啟用寫好的網路介面並重啟網路

    sudo ifup enp0s8

    sudo /etc/init.d/networking restart