FlossDoc: 請協力 GPLv3 的中文翻譯工作。
架設 Apache HTTP 伺服器
FlossDoc,自由中文開源知識庫
目录 |
[编辑]
安裝 Apache HTTP 伺服器
Debian/Ubuntu 管理員安裝套件 apache2:
apt-get install apache2
[编辑]
設定 Apache 伺服器
Apache 的設定檔案一般主要為 httpd.conf,為方便管理,Debian/Ubuntu 的 apache 2.x 把設定檔案分柝在 /etc/apache2 目錄中幾個檔案:
- apache2.conf - 主要設定檔案,主要有一些通用性設定,例如指定伺服器設定檔案所在的目錄 (
ServerRoot) 、啟動時預設開啟伺服器的數目 (StartServer) 和預設日誌紀錄檔案的格式 (LogFormat) 等。此檔案尾亦會有一些 Include 指令指示要載入以下其他設定檔。 - httpd.conf - 一般為空檔案,主要用作兼容非 Debian/Ubuntu 的設定程式,讓它們可以不需辨別這是否 Debian/Ubuntu 系統而在此檔案加入設定。
- envvars - 主要用作設定一些環境變數 (environment variables) 來微調 Apache 伺服器的運作。
- ports.conf - 設定 Apache 伺服器聆聽 (提供服務) 的埠編號,預設一般為 80。
- conf.d - 存放其他額外設定檔案的目錄。
- mods-available - 存放個別 Apache 模組設定檔案的目錄。
- mods-enable - 指示會啟用那個 Apache 模組的目錄,裡面的檔案一般為指向 /etc/apache2/mods-available 的軟連結 (symbolic link)。
- sites-available - 存放個別網站設定檔案的目錄。
- sites-enable - 指示會啟用那個網站的目錄,裡面的檔案一般為指向 /etc/apache2/sites-available 的軟連結 (symbolic link)。
其實主要有關網站的設定都集中在 /etc/apache2/sites-available/default:
<VirtualHost *:80>
ServerAdmin webmaster@example.com
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Apache 的設定主要多個指令 (Directive) 組成。常用指令包括:
- DocumentRoot - 指定經 Apache 可以存取的網頁的目錄。例如 DocumentRoot /var/www,當瀏覽器存取 URL http://example.com/welcome.html 時,Apache 會提供檔案 /var/www/welcome.html 的內容。存取 URL http://example.com/movie/news.html 會取得檔案 /var/www/movie/news.html。
- ServerAdmin - 設定網頁管理員的電郵地址,用作當網站發生問題時告知使用者可以向那個電郵地址匯報問題。
- ServerName - 設定網站的名稱
[编辑]
重新啟動 Apache HTTP 伺服器
每次設定好後,可以打以下命令重新啟動 Apache 來激活新設定:
/etc/init.d/apache2 restart
重新啟動 Apache 會中斷正在連接的作業,令網站有最少幾秒間停止運作。您可以使用以下命令令 Apache 只是重新讀取新設定而不影響運作:
/etc/init.d/apache2 reload
[编辑]

