Ubuntu 預設使用 Apache2 當做 Web server.
這一次試用了 Ubuntu 13.04 來架站, Ubuntu 有區分 Desktop 版和 Server 但我還是選擇了 Desktop 版本來使用,原因之一是 Ubuntu Server 版不提供桌面系統,所以我的做法是將 Ubuntu Desktop + apt-get 將需要的服務下載安裝.要讓 Web server 順利運作需要下列套件.
- Apache:
- PHP:
Apache:
第一個要啟動的服務就是 Apache.(Apache 是一種 Web Server ,和 Windows 的 IIS 是一樣的功能).
ppny@benjr:$ sudo apt-get update ppny@benjr:$ sudo apt-get install apache2
透過 web browser 瀏覽器連上你 http://localhost, 如果 httpd 能正確運作,那你可以看到內容如下面一樣的網頁.
PHP:
部分的 Web 程式主要透過 PHP 的程式語言架構出來的,而 PHP 是一種直譯式的程式語言,用於網頁的撰寫,不同於靜態式的 HTML 它可以依據使用者的需求來呈現不同的網頁內容.
ppny@benjr:$ sudo apt-get install php5 libapache2-mod-php5
順便試一下 PHP 功能運作是否正常.你可以用自己喜歡的編輯器來鍵入下面的內容.
ppny@benjr:$ sudo vim /var/www/phpinfo.php <?php phpinfo(); ?> ppny@benjr:$ sudo /etc/init.d/apache2 restart
/var/www (或是 /var/www/html) 是 Apache 預設的目錄,你可以修改 /etc/httpd/conf/httpd.conf 修改 DocumentRoot .
<?php phpinfo(); ?> 這是 PHP 的格式,未來使用 CMS 的內容大部分都是使用 PHP 來顯示,不過不用擔心.我們不需要懂 PHP ,CMS 會幫我們處理一切.開啟你的網頁連上你 http://localhost/phpinfo.php ,如果一切運作正常那你會看到和下面一樣的網頁.
如果有遇到無法開啟或是開啟時有問題,可以在 Linux 下查看 Apache 的 log ( 位於 /var/log/httpd/error_log ) 找出問題點.
網站的設定檔除了在 apache2.conf 做全域的設定,至於個別虛擬主機或網站的設定,就需要修改 /etc/apache2/sites-available/default 裡面
像是 ubuntu 預設的 apache2 會讓找不到網頁的路徑時顯示出 index of,讓別人點選網站目錄內容,透過這邊設定就可以解決這個問題.
# vi /etc/apache2/sites-available/default # Indexes
Indexes 主要是當 Client 找不到 index.html 等或是首頁時,就在網頁上列出該目錄底下所有檔案.老實說這樣真的很不好,預設是開啟的建議關閉。用 # 就表示該行是 註譯.
更多設定請參考:
UbuntuTW Guide ch14 – Ubuntu 正體中文 Wiki – http://wiki.ubuntu-tw.org/index.php?title=UbuntuTW_Guide_ch14#Apache2_.E8.A8.AD.E5.AE.9A