close

先進行系統更新

並安裝與升級至要安裝的版本

rpm -Uvh http://mirror01.idc.hinet.net/EPEL//7/x86_64/e/epel-release-7-5.noarch.rpm

rpm -Uvh http://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release-1.0-13.ius.centos7.noarch.rpm

 

yum install yum-plugin-replace -y

1. 安裝 Nginx

a. 加入的 Nginx rpm

#rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

 

b. 安裝 nginx

#yum install nginx -y

 

c. 啟動nginx服務

#systemctl start nginx.service

 設定開機啟動服務

#systemctl enable nginx.service

 

網站根目錄位置

1. /usr/share/nginx/html

定義檔位置

1. /etc/nginx/nginx.conf (記錄執行者user)

2. /etc/nginx/conf.d/default.conf (記錄網站設定)

3. 官方建議其他Visual conf設定

mkdir /etc/nginx/sites-available

mkdir /etc/nginx/sites-enabled

複製Default設定

cp /etc/nginx/sites-available/default /etc/nginx/sites-available/example.com

修改需要的參數後

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com

當需要暫時停用時只要砍掉sites-enabled裡面的資料即可

 

2.安裝 mariadb (Mysql作者另闢新的open source以維持open source的精神)

a. 安裝mariadb server與cleint

#yum install mariadb-server mariadb -y

b. 啟動

#systemctl start mariadb

 

c. 設定密碼

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

 

2.4 開機服務設定

#systemctl enable mariadb.service

3.安裝 php

a. 安裝,依據自己所需的套件選擇安裝

#yum install php php-mysql php-fpm php-ctype php-dom php-gd php-ldap php-mbstring php-posix php-soap php-xml -y

 

b. 安全設定

這裡如果用預設等於1的話會造成的漏洞是可以讓使用者上傳一個偽造jpg的PHP檔案

這算是個大洞

#sudo vi /etc/php.ini

找 ;cgi.fix_pathinfo = 1

改為 cgi.fix_pathinfo=0

 

c. 更改 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

 

d. 啟動

#systemctl start php-fpm

 

e. 設定開機啟動服務

#systemctl enable php-fpm.service

 

f. Nginx的配置要處理的PHP頁面

#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;

}

 //設定一些錯誤網址

location /www {

error_page 404 /404.html;

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root /usr/share/nginx/html;

}

 //設定php-fpm執行

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;

}

}

 

g. 重新啟動nginx

#sudo systemctl restart nginx

查看Localhost是否可以正常執行

arrow
arrow

    Matt 發表在 痞客邦 留言(0) 人氣()