Debian / Ubuntu 安裝 Nginx, PHP, MariaDB (LEMP)

LEMP 意思是 Linux + Nginx, + MySQL (MariaDB) + PHP。Nginx (發音能同 engine x) 是一款以性能取向的網頁伺服器, 較 Apache 及 Lighttpd 使用較少記憶體, 而配置 Nginx 及 PHP 的方法與 Apache 有點不同, 因為 Nginx 是透過 php-fpm (FastCGI Process Manager) 運作的, 以下是在 Debian 及 Ubuntu 安裝 Nginx, MariaDB 及 PHP 的方法。

安裝 Nginx
在 Debian 或 Ubuntu 安裝 Nginx, 最簡單的方法是先加入 Nginx 的 Apt-get repository, 然後用 apt-get 安裝, 輸入以下指令安裝:

$ sudo wget http://nginx.org/keys/nginx_signing.key
$ sudo apt-key add nginx_signing.key
$ sudo echo ‘deb http://nginx.org/packages/debian/ jessie nginx’ >> /etc/apt/sources.list
$ sudo ‘deb-src http://nginx.org/packages/debian/ jessie nginx’ >> /etc/apt/sources.list
$ sudo apt-get update
$ sudo apt-get install nginx

Nginx 預設的 Document Root 並不存在, 手動建立及設定權限:

$ sudo mkdir /var/www
$ sudo chown www-data:www-data /var/www

安裝好 Nginx 網頁伺服器後, 便可以啟動 Nginx:

$ sudo /etc/init.d/nginx start

啟動後, 便可以用瀏覽器檢查 Nginx 是否可以連接, 例如:

http://server-ip/

如果看到 403 頁面便安裝成功了, 出現 403 的原因是 Document Root 目錄沒有 index 檔的原固。

安裝 MariaDB

執行以下指令安裝 MariaDB:

$ sudo apt-get install mariadb-server
$ sudo mysql_install_db

啟動 MariaDB:

$ sudo service mysql restart

執行以下指令設定 MariaDB 的 root 密碼, 預設是空密碼, 所以建議盡快修改:

$ sudo mysql_secure_installation





安裝 PHP

$ sudo apt-get install php5-cgi php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

安裝好 PHP 後, 開啟檔案 /etc/php5/fpm/php.ini, 找到 cgi.fix_pathinfo=1, 將 1 改成 0, 即這樣:

cgi.fix_pathinfo=0

儲存檔案後, 再開啟檔案 /etc/php5/fpm/pool.d/www.conf, 找到 listen 一行, 改成這這樣:

listen = /var/run/php-fpm/php-fpm.sock

儲存檔案後, 可以用以下指令啟動 php-fpm

$ sudo service php5-fpm restart

儲存檔案後, 重新啟動 Nginx 便完成了:

$ sudo service nginx restart

Latest Comments

  1. 天楓 31 August 2015

Leave a Reply