网站首页 > 技术教程 正文
基本原理
nginx本身不能处理PHP,它只是个web服务器,当接收到请求后,如果是php请求,则发给php解释器处理,并把结果返回给客户端。
nginx一般是把请求发fastcgi管理进程处理,fascgi管理进程选择cgi子进程处理结果并返回被nginx。
安装php和php-fpm
这里我使用的php7版本,目前官方已经发布了php7的beta3版本。php-fpm已经被包含在里面了,无需另外安装。。。
至于php7的编译安装,看一下我之前的 这篇文章 文章就妥妥的搞定了!
安装nginx
nginx的话,毫无疑问我肯定选择源码编译安装,因为确实是习惯了这种方式了!
我这里就拿1.6.2版本为例,戳 这里下载,解压之后进入源码目录
#配置,相关参数含义自己去查阅文档哦
./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-http_realip_module --with-http_sub_module --with-http_gzip_static_module --with-http_stub_status_module --with-pcre --with-cc-opt="-Wno-deprecated-declarations"
#编译
make
#安装
sudo make install
测试ngnix
#命令拷贝到系统目录,方便使用
sudo cp /usr/local/nginx/nginx /usr/bin
#测试配置是否出错,如果出错,按照错误信息提示去修改了
nginx -t
#启动nginx
nginx
页面访问,输入http://localhost:8888查看【这里我在配置文件里面把nginx的监听端口改成了8888】出现如下页面就正常了
配置php-fpm
#复制一份有效的配置文件
sudo cp /usr/local/php7/etc/php-fpm.conf.default.conf php-fpm.conf
#复制一份有效的用户配置文件,用户名是配置php的时候指定的
sudo cp /usr/local/php7/etc/php-fpm.d/www.conf.default www.conf
#启动php-fpm,mac必须要以root用户启动,-R 参数表示 --allow-to-run-as-root
sudo /usr/local/php7/sbin/php-fpm -R
#查看一下php-fpm是否启动成功
ps aux | grep php-fpm
#这里我修改了php-fpm的端口号,默认是9000
netstat -ant | grep 90001
nginx整合php-fpm
修改nginx的配置文件,支持php文件的解析
#打开配置文件,找到`location ~ \.php
...
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9001;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
# include fastcgi_params;
#}
...
#稍微改吧改吧就成了下面的样子,相信你看的懂什么意思了。。。
...
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9001;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
...
测试php文件的解析
cd /usr/local/ngnix/html
echo "<?php phpinfo();" > index.php
浏览器访问 http://localhost:8888/index.php,熟悉的画面又出现了!
总结一下
经过以上这些简单的步骤之后,nginx下运行php相信不再是那么神秘了。。。
当然,我这里只是配置了一个最基本的运行环境,像你要运行项目的话应该还要配置虚拟主机、伪静态这些。
还有就是nginx配置文件的参数含义,这个有空的话还是去看看官方文档说明,毕竟你要知道你配置的每一项是什么意思才好!
猜你喜欢
- 2024-10-11 搭建个人网站后台问题汇总(搭建网站后端)
- 2024-10-11 新增利息宝-京东淘宝唯品会自动抢单系统源码搭建过程
- 2024-10-11 nginx搭建基于python的web环境的实现步骤
- 2024-10-11 「源码教程」教你如何在宝塔上快速部署优客365网址导航
- 2024-10-11 Wordpress+Nginx代理部署实战(nginx代理wsdl)
- 2024-10-11 关于将 htaccess 转 nginx(nginx转换)
- 2024-10-11 11——10服务器集群&tenginx(服务器 集群)
- 2024-10-11 百度云开放云主机设置WP伪静态规则
- 2024-10-11 笨小猪带你 Niushop系统伪静态(笨小猪带你+niushop系统伪静态怎么办)
- 2024-10-11 网站建站基础第十七课(zblog的伪静态配置和修改)
你 发表评论:
欢迎- 最近发表
-
- Linux新手必看:几种方法帮你查看CPU核心数量
- linux基础命令之lscpu命令(linux中ls命令的用法)
- Linux lscpu 命令使用详解(linux常用ls命令)
- 如何查询 Linux 中 CPU 的数量?这几个命令要知道!
- 在linux上怎么查看cpu信息(linux如何查看cpu信息)
- 查看 CPU 的命令和磁盘 IO 的命令
- 如何在CentOS7上改变网卡名(centos怎么改网卡名字)
- 网工必备Linux网络管理命令(网工必备linux网络管理命令是什么)
- Linux 网络命令知多少(linux 网络 命令)
- Linux通过命令行连接wifi的方式(linux命令行连接无线网)
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)