一、.安装nginx请参考: http://qingwei201314.iteye.com/blog/1729174
二、安装php:
-
获取并解压 PHP 源代码:
tar zxf php-x.x.x
-
配置并构建 PHP。在此步骤您可以使用很多选项自定义 PHP,例如启用某些扩展等。 运行 ./configure --help 命令来获得完整的可用选项清单。 在本示例中,我们仅进行包含 PHP-FPM 和 MySQL 支持的简单配置。
cd ../php-x.x.x ./configure --enable-fpm --with-mysql make sudo make install
-
创建配置文件,并将其复制到正确的位置。
cp php.ini-development /usr/local/php/php.ini cp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf cp sapi/fpm/php-fpm /usr/local/bin
-
需要着重提醒的是,如果文件不存在,则阻止 Nginx 将请求发送到后端的 PHP-FPM 模块, 以避免遭受恶意脚本注入的攻击。
将 php.ini 文件中的配置项 cgi.fix_pathinfo 设置为 0 。
打开 php.ini:
vim /usr/local/php/php.ini
定位到 cgi.fix_pathinfo= 并将其修改为如下所示:
cgi.fix_pathinfo=0
-
在启动服务之前,需要修改 php-fpm.conf 配置文件,确保 php-fpm 模块使用 www-data 用户和 www-data 用户组的身份运行。
vim /usr/local/etc/php-fpm.conf
找到以下内容并修改:
; Unix user/group of processes ; Note: The user is mandatory. If the group is not set, the default user's group ; will be used. user = www-data group = www-data
然后启动 php-fpm 服务:
/usr/local/bin/php-fpm
本文档未涵盖对 php-fpm 进行进一步配置的信息,如果您需要更多信息,请查阅相关文档。
-
配置 Nginx 使其支持 PHP 应用:
vim /usr/local/nginx/conf/nginx.conf
修改默认的 location 块,使其支持 .php 文件:
location / { root html; index index.php index.html index.htm; #如果是drupal,需要加入以下内容 #try_files $uri $uri/ /index.php; }
下一步配置来保证对于 .php 文件的请求将被传送到后端的 PHP-FPM 模块, 取消默认的 PHP 配置块的注释,并修改为下面的内容:
location ~* \.php$ { fastcgi_index index.php; fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; }
重启 Nginx。
- 如果使用thinkphp,配置pathinfo:
- 修改第6步中的部分内容如下:
-
location ~ \.php { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; set $path_info ""; set $real_script_name $fastcgi_script_name; if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") { set $real_script_name $1; set $path_info $2; } fastcgi_param SCRIPT_FILENAME $document_root$real_script_name; fastcgi_param SCRIPT_NAME $real_script_name; fastcgi_param PATH_INFO $path_info; include fastcgi_params; }
第9步或改成:
location ~ [^/]\.php(/|$) {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
set $path_info "";
set $real_script_name $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
set $real_script_name $1;
set $path_info $2;
}
fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
fastcgi_param SCRIPT_NAME $real_script_name;
fastcgi_param PATH_INFO $path_info;
include fastcgi_params;
}
相关推荐
Linux+Nginx+Mysql+Php安装教程
CentOS7 自动化搭建Nginx+PHP7+Mysql+Docker+Docker-Compose Shell脚本,Docker version 18.06.1-ce,docker-compose version 1.22.0
完美安装PHP + Nginx +Windows 配置 ,一起安装只要十分钟,让你少钻几个坑 快速解决对应问题
修改yum源;在centos7下直接部署nginx和php,成功访问phpinfo
nginx安装所需包含了nginx安装所需插件和安装说明文档。php安装所需包含了我已经下载好的所有需要的插件和php的安装说明。这些我已经在Linux centos 6.5中,亲自按步骤进行了操作。为了方便大家更好更快的完成工作...
Win+Nginx+PHP+MySQL 环境搭建是指在 Windows 操作系统上安装和配置 Nginx、PHP、MySQL 等组件,以便搭建一个完整的 Web 服务器环境。该环境搭建主要涉及到 Nginx、PHP、MySQL 三个组件的安装和配置。 一、Nginx ...
在这个笔记中,我们将详细介绍如何安装和配置Tomcat、Nginx和PHP,并将其整合在一起。 一、Nginx的安装和配置 首先,我们需要安装Nginx。使用以下命令添加Nginx的源并安装Nginx: sudo add-apt-repository ppa:...
搭建nginx php时参考的网页,具体搭建过程见我的博客
nginx+apache+mysql+php+memcached+squid搭建门户网站
Ubuntu+Nginx+Mysql+Php安装配置详解
使用shell脚本,使其直接在centos7下直接部署nginx和php,成功访问phpinfo
docker-compose php7.3.4-fpm+nginx+mysql配置
商城系统推荐使⽤的Web环境是:Ubuntu+PHP+Nginx+Mysql+Redis 使用购买的源码crmeb,有开源版本,程序员自学可以使用开源版本。
nginx+php-fpm解决502 Bad Gateway.zip
nginx+php+mysql资源集 包含: php-7.1.8.tar.gz mysql-5.6.42.tar.gz nginx-1.8.1.tar.gz libxml2-2.9.1.tar.gz openssl-1.1.0e.tar.gz zlib-1.2.7.tar.gz 有没有一种痛苦的经历,为了配置nginx+php+mysql环境 在...
nginx+php+oracle安装配置,其中的一些有用的网页,保存下来,给大家使用的。
Nginx+php+mysql+phpmyadmin引擎管理器C++源码,本人自写的小软件,服务一键安装、卸载、启用、停用。替换版本也很方便
安装windows 下 php7+nginx+fastcgi
linux+nginx+php+mysql环境配置指南.pdf
LNMP(linux+nginx+mysql+php)服务器环境搭配