cloud-server-setup-series-2

雲端伺服器搭建系列(二):在 Ubuntu 上安裝 LAMP (Apache, PHP, MySQL)

決定好選用哪家雲端伺服器供應商了嗎?下一步就是安裝系統及所需軟件包。

我們今次要建構的是 LAMP 環境,即是 Linux,Apache,MySQL 及 PHP,這是一個非常流行的網頁伺服器架構。


什麼是 LAMP?

Linux

我們將選用 Ubuntu 作為伺服器的操作系統 (Operation System)。

以前筆者是用 CentOS 的,CentOS 基本上是 Red Hat Enterprise Linux 的一個免費版本,特色是可靠,穩定,安全,由 Community 維護。CentOS 為了確保系統的穩定性,軟件包 (Package) 的更新版本會先在 Fedora 廣泛測試,足夠穩定後才發佈,所以軟件包的更新頻率也較慢。

而 Ubuntu 則是以 Debian 為基礎,擁有很豐富、統一的軟件包庫 (Package Repository),它的軟件包版本更新頻率很高,很容易就可以更新至最新版本。很多新創公司都選用 Ubuntu,如 Dropbox,Instagram,Quora 等。現時穩定的版本為 14.04

Apache

Apache 是一個很有歷史、跨平台及安全性高的伺服器軟件,安裝及配置也很容易,據統計,Apache 是現時網絡上市場佔有率最高 (超過 50%) 的伺服器軟件。

筆者認為 Apache 唯一的不足是當處理大量 Concurrent Users(同一時間的訪客量)時對伺服器 RAM 的要求較高,這種情況下另一款名為 Nginx 的伺服器軟件表現更佳(以後再討論關於 Nginx 的安裝及配置方法),但整體來說是一個很好的網頁伺服器解決方案。

PHP & MySQL

PHP & MySQL 一直以來都是絕佳組合。PHP 是現時網絡上市場佔有率最高的伺服器端語言,現在最新的穩定版本是 5.6,筆者認為 5.4 已經是現時對 PHP 版本的最低要求(著名 PHP Framework Laravel 4.2 的 PHP 版本要求是 >= 5.4,而 Laravel 5 更要求 PHP 5.5 或以上)。


準備工作

安裝作業系統這件事並不需要自己操心(雲端服務麻),直接選擇你想要安裝的作業系統及版本,確認一下就完成了。這次我們要安裝的作業系統是 Ubuntu 版本 14.04

安裝完成後,啟動它吧!然後以 SSH 登入到伺服器。

Mac 用戶可以直接打開 Terminal 輸入如下指令,假設用戶是 root 及 IP 地址是 123.456.789.012

ssh root@123.456.789.012

Windows 用戶可以下載 Putty 軟件 進行 SSH 連接。


第一步:安裝 APACHE

在 Ubuntu 上安裝軟件包非常簡單,我們會用 apt 這個軟件包管理軟件 (Package Manager) 下載。

首先更新一下軟件源

sudo apt-get update

然後再下載 Apache

sudo apt-get install apache2

這個時候你可以在瀏覽器打開你的伺服器 IP 地址,看到 Apache 2 的預設歡迎頁面的話,就代表 Apache 已正確地安裝好了。

Apache 的預設網頁根目錄在 /var/www/html,你看到的歡迎頁面就是 /var/www/html/index.html 這個檔案。


第二步:安裝 MYSQL

這一步會安裝 MySQL 伺服器以及 php 的 MySQL 模組,寫成一行一次過安裝:

sudo apt-get install mysql-server php5-mysql

然後初始化 MySQL 的預設資料庫:

sudo mysql_install_db

最後,更改 MySQL root 密碼及移除不必要的權限以加強安全性:

sudo mysql_secure_installation

第三步:安裝 PHP

第一步跟第二步都很容易嗎?第三步同樣地只需一句指令。

我們除了安裝 PHP 以外,有些 PHP 的常用模組都可能需要安裝,包括:

  • php5-curl(讀取外部網站,有時存取 API 需要用到)
  • php5-gd(圖像處理,例如縮圖)
  • php5-mcrypt(很重要的模組,Laravel 要求必須安裝的安全性模組)

libapache2-mod-php5 都是必須安裝的模組,讓 Apache 支援 PHP。

一次過安裝 PHP 及上述模組,請執行:

sudo apt-get install php5 libapache2-mod-php5 php5-curl php5-gd php5-mcrypt

最後,由於我們的 Apache 已在執行中,更新了的 PHP 並不會立刻生效。我們只要重啟一下 Apache 伺服器即可:

sudo service apache2 restart

一些調整

筆者通常在安裝好 Apache 後,都會再進行一些設定。Apache 的 Auto Index 功能預設是開啟的,如果你的資料夾下沒有如 index.html 或 index.php 的 Index 檔案,而訪客又瀏覽你這個資料夾的時候,即會看到資料夾的檔案列表。可以這樣關閉 Auto Index:

sudo a2dismod autoindex 
sudo service apache2 restart 

另外伺服器的時區也可能跟你的時區不同,可以這樣查看伺服器的時間:

date

如需調整伺服器時區,可輸入如下指令:

sudo dpkg-reconfigure tzdata

即有一個界面指引你選擇合適的時區。


總結

本篇介紹了如何在 Ubuntu 上安裝 LAMP 架構,設定一台雲端伺服器也沒想像中難吧?下一篇我們會介紹如何設定 Apache Virtual Host,讓同一台伺服器寄存多個網站。

如有任何問題歡迎留言及指教,感謝。

延伸閱讀

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *