在幾個知名的VPS主機中,我個人認為 DigitalOcean 主機的操作介面最簡單、也最清楚,除了費用便宜外,也有以小時計費。因此,若是為了練習如何從無到有架設網站伺服器,它是我非常推薦的一個選項。玩個幾天,再砍掉系統,還花不到一杯飲料錢,可說是相當的划算。這邊順便記錄一下安裝 LNMP 的步驟,前後花不到半小時就能完成了,至於細部的效能調整,還請各位自行搜尋了。

首先說明,這邊示範的作業系統是 Centos 7,請別搞錯了!而 VPS 的安裝是一鍵完成,不再說明介紹。

 

1. 安裝 Nginx

1.1 加入的 Nginx 庫
#sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

1.2 安裝 nginx
#sudo yum install nginx

1.3 啟動
#sudo systemctl start nginx.service

1.3.1 開機啟動
#sudo systemctl enable nginx.service

★網站根目錄位置
1. /usr/share/nginx/html
★定義檔位置
1. /etc/nginx/nginx.conf (記錄執行者user)
2. /etc/nginx/conf.d/default.conf (記錄網站設定)

 

2.安裝 mysql

2.1 安裝
#sudo yum install mariadb-server mariadb

2.2 啟動
#sudo systemctl start mariadb

2.3 設定密碼
#sudo mysql_secure_installation (第一個enter,再來輸入兩次新密碼、接著enter帶過選項)

2.4 開機啟動
#sudo systemctl enable mariadb.service

 

3.安裝 php

3.1 安裝
#sudo yum install php php-mysql php-fpm

3.2 安全設定
#sudo vi /etc/php.ini
找 ;cgi.fix_pathinfo = 1
改為 cgi.fix_pathinfo=0

3.3 更改 php-fpm 定義檔
#sudo vi /etc/php-fpm.d/www.conf
將 listen = 127.0.0.1:9000
改為 listen = /var/run/php-fpm/php-fpm.sock

將 user = apache
改為 user = nginx (同nginx執行者)

將 group = apache
改為 group = nginx

3.4 啟動
#sudo systemctl start php-fpm

3.5 開機啟動
#sudo systemctl enable php-fpm.service

3.6 Nginx的配置要處理的PHP頁面
#sudo vi /etc/nginx/conf.d/default.conf

替換成:
server {
listen 80;
server_name localhost;

root /usr/share/nginx/html;
index index.php index.html index.htm;

location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}

location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

3.7 重新啟動nginx
#sudo systemctl restart nginx

 

補充:安裝 phpmyadmin

1. 下載
#rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm

#sudo yum install epel-release

2. 安裝
#yum install phpmyadmin

3. 連結目錄(依照個別目錄連)
#sudo ln -s /usr/share/phpMyAdmin /usr/share/nginx/html

4. 解決 phpmyadmin 無法登入
#sudo vi /etc/php.ini
session.save_path = ‘/var/lib/php/session’

資料夾權限問題,擁有者給 nginx 也可以
chown -R nobody:nobody /var/lib/php/session
chmod 777 /var/lib/php/session

5. 重新啟動
sudo systemctl restart php-fpm

★定義檔位置
vi /etc/httpd/conf.d/phpMyAdmin.conf

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *