centos7安裝並配置nginx+php
-
安裝nginx
yum install nginx
-
設定nginx開啟起動
systemctl start nginx
-
測試
訪問http://你的域名或IP/ -
檢視nginx安裝位置
whereis nginx
nginx: /usr/sbin/nginx /etc/nginx /usr/share/nginx /usr/share/man/man3/nginx.3pm.gz /usr/share/man/man8/nginx.8.gz
-
安裝php
[不用這種]yum install php php-mysql php-fpm
安裝過程中經常會見到如下問題:
2:postfix-2.10.1-6.el7.x86_64 有缺少的需求 libmysqlclient.so.18()(64bit)
2:postfix-2.10.1-6.el7.x86_64 有缺少的需求 libmysqlclient.so.18(libmysqlclient_18)(64bit)
解決方法:
把php-mysql換成php-mysqlnd
即執行yum install php php-mysqlnd php-fpm php-gd php-mbstring
-
php-mbstring如果不安裝,mb_substr字串擷取等無法用;
-
配置php處理器
vim /etc/php.ini
查詢cgi.fix_pathinfo
將 ;cgi.fix_pathinfo=1改為cgi.fix_pathinfo=0 -
配置www.conf
vim /etc/php-fpm.d/www.conf
將
user = nobody
group = nobody
改為
user = nginx
group = nginx
前提是已經建立了nginx使用者和nginx組。 -
起動php-fpm
systemctl start php-fpm
-
設定php-fpm開機啟動
systemctl enable php-fpm
-
配置nginx
開啟/etc/nginx/conf.d/default.conf,如果不存在則建立
貼上
server {
listen 80;
server_name server_domain_name_or_IP;note that these lines are originally from the "location /" block
root /usr/share/nginx/html;
index index.php index.html index.htm;location / {
location ~ .php$ {
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;
}
try_files $uri =404;
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi.conf;
}
} -
重起nginx
systemctl restart nginx
-
測試php
建立/usr/share/nginx/html/index.php/usr/share/nginx/html/info.php
輸入以下內容:
訪問http://你的IP/index.php,正常情況下會出現
安裝gd擴充套件庫
yum install php-gd
1、如果HTML中套用PHP無法解析,如下操作:
開啟/etc/php-fpm-d/www.conf,將分號去掉
;security.limit_extensions = .php .php3 .php4 .php5
改為:
security.limit_extensions = .php .php3 .php4 .php5
2、開啟短標籤
/etc/php.ini
查詢short_open_tag改為
short_open_tag = On
3、出現PHP message: PHP Warning: date(): It is not safe to rely on the system's timezone settings.
說明時區設定有問題
/etc/php.ini
查詢 date.timezone 改為
date.timezone = PRC
然後重啟php-fpm服務
service php-fpm restart