把OctoberCMS的web服务器由Apache更换为Nginx
卸载安装的apache和php
yum remove httpd* php*
使用php -v看是否还能看到php的版本信息,如果能,说明没卸载干净,继续进行以下操作:
rpm -qa | grep php
根据列表卸载,注意卸载顺序,先卸载没有依赖的。
正确的卸载顺序为:
rpm -e php-mysql-5.1.6-27.el5_5.3
rpm -e php-pdo-5.1.6-27.el5_5.3
rpm -e php-xml-5.1.6-27.el5_5.3
rpm -e php-cli-5.1.6-27.el5_5.3
rpm -e php-gd-5.1.6-27.el5_5.3
rpm -e php-common-5.1.6-27.el5_5.3
最后,再用php -v,看看是否卸载干净。
安装PHP和PHP-FPM
- nginx本身是个web服务器,需要安装php-fpm处理php文件,php-fpm把处理结果返回给nginx。
- php-fpm是一个管理fastcgi的工具,以前是第三方的包,现在php7.0版本已经集成了这个东西。
yum默认安装的是老版本PHP,需要增加额外资源库,才能安装新版php7.0:
CentOs 6.x
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpmmirror.webtatic.com/yum/el6/latest.rpm
CentOs 7.X
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
如果想删除上面安装的包,使用以下命令:
- rpm -qa | grep webtatic
- rpm -e 上面搜索到的包即可
yum list php* //显示可用的php安装包
安装php7.0
yum -y install php70w.x86_64
php -v //查看安装的php版本
php -m //查看安装的php模块
查找php:
which php 或 whereis php
安装php-fpm
yum -y install php70w-fpm.x86_64
根据需要,安装其他模块,命令为:php -y install XXXXX
统一nginx与php-fpm的运行用户
- 对于静态文件,nginx运行用户要有对文件的读/读写权限。
- 对于php文件,nginx运行用户霜有对文件的读权限,发现是php文件后,转发给php-fpm。php-fpm运行用户要有对这些文件的读/读写权限。
查看nginx运行在哪个用户下
ps -ef | grep nginx
查看php-fpm运行在哪个用户下
ps -ef | grep php-fpm
调整nginx的运行用户
nginx配置文件,第一行
user XXXX
调整php-fpm的运行用户
yum安装的php-fpm,配置文件所在路径:/etc/php-fpm.d/www.conf
user = www-data
group = www-data
重启php-fpm
/etc/init.d/php-fpm restart
netstat -tln | grep 9000 //查看9000端口使用情况
ps aux | grep php-fpm //查看是否运行在www-data用户
运行用户修改完毕,继续修改文件目录权限
chown www-data:www-data -R /网站目录XXX
开启自动启动php-fpm
添加可执行权限
chmod +x /etc/init.d/php-fpm
添加到开机自动启动
chkconfig --add php-fpm
chkconfig php-fpm on
这样后,php-fpm就会开机自动启动了,而且可以使用以下命令进行重启
service php-fpm start
service php-fpm stop
service php-fpm reload或restart
修改nginx配置文件把nginx与php-fpm关联起来
server {#监听端口listen 80;#访问域名server_name 域名;index index.php index.html index.htm;#编码格式,若网页格式与此不同,将被自动转码charset utf-8;#设定本虚拟主机的访问日志#access_log /var/log/nginx/host.access.log main;#注意一下,这里把root放到了location外面root /data/wwwroot/XXXX; location / { try_files $uri $uri/ /index.php$is_args$args;} #使nginx能够解析php文件location ~ \.php$ { try_files $uri =404;fastcgi_split_path_info ^(.+\.php)(/.+)$;fastcgi_pass 127.0.0.1:9000; #这个是php-fpm监听的端口,默认为9000fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; #这里的$document_root就是上面外层的rootinclude fastcgi_params; } #error_page 404 /404.html;# redirect server error pages to the static page /50x.html#error_page 500 502 503 504 /50x.html;location = /50x.html {root /usr/share/nginx/html;}# Whitelist
## Let October handle if static file not exists
location ~ ^/favicon\.ico { try_files $uri /index.php; }
location ~ ^/sitemap\.xml { try_files $uri /index.php; }
location ~ ^/robots\.txt { try_files $uri /index.php; }
location ~ ^/humans\.txt { try_files $uri /index.php; }## Let nginx return 404 if static file not exists
location ~ ^/storage/app/uploads/public { try_files $uri 404; }
location ~ ^/storage/app/media { try_files $uri 404; }
location ~ ^/storage/temp/public { try_files $uri 404; }location ~ ^/modules/.*/assets { try_files $uri 404; }
location ~ ^/modules/.*/resources { try_files $uri 404; }
location ~ ^/modules/.*/behaviors/.*/assets { try_files $uri 404; }
location ~ ^/modules/.*/behaviors/.*/resources { try_files $uri 404; }
location ~ ^/modules/.*/widgets/.*/assets { try_files $uri 404; }
location ~ ^/modules/.*/widgets/.*/resources { try_files $uri 404; }
location ~ ^/modules/.*/formwidgets/.*/assets { try_files $uri 404; }
location ~ ^/modules/.*/formwidgets/.*/resources { try_files $uri 404; }
location ~ ^/modules/.*/reportwidgets/.*/assets { try_files $uri 404; }
location ~ ^/modules/.*/reportwidgets/.*/resources { try_files $uri 404; }location ~ ^/plugins/.*/.*/assets { try_files $uri 404; }
location ~ ^/plugins/.*/.*/resources { try_files $uri 404; }
location ~ ^/plugins/.*/.*/behaviors/.*/assets { try_files $uri 404; }
location ~ ^/plugins/.*/.*/behaviors/.*/resources { try_files $uri 404; }
location ~ ^/plugins/.*/.*/reportwidgets/.*/assets { try_files $uri 404; }
location ~ ^/plugins/.*/.*/reportwidgets/.*/resources { try_files $uri 404; }
location ~ ^/plugins/.*/.*/formwidgets/.*/assets { try_files $uri 404; }
location ~ ^/plugins/.*/.*/formwidgets/.*/resources { try_files $uri 404; }
location ~ ^/plugins/.*/.*/widgets/.*/assets { try_files $uri 404; }
location ~ ^/plugins/.*/.*/widgets/.*/resources { try_files $uri 404; }location ~ ^/themes/.*/assets { try_files $uri 404; }
location ~ ^/themes/.*/resources { try_files $uri 404; }}
重启nginx。
现在试试吧,是不是可以打开octobercms网站了。
附:linux用户管理
- groupadd www-data //添加用户组www-data
- useradd -g www-data www-data //添加用户www-data,并加到用户组www-data
- userdel www-data //删除用户www-data
- userdel -r www-data //删除用户www-data,同时删除他的工作目录
- groupdel www-data //删除用户组
- id www-data //查看用户www-data的信息
- groups //查看当前登录用户的组内成员
- groups www-data 查看用户www-data所在的组,以及组内成员
- whoami //查看当前登录用户名
- /etc/group //此文件包含所有用户组
- /etc/shadow和/etc/passwd //此文件包括所有用户名
把OctoberCMS的web服务器由Apache更换为Nginx相关推荐
- CentOS上如何把Web服务器从Apache换到nginx
码农日记原创,转载请注明出处并给出原文链接! http://www.androiddev.net/webserver-apache-to-nginx/ 我的网站在阿里云服务器上, 1G内存的配置,但用 ...
- web服务器 linux+apache+tomcat+mysql+jsp+php 整合安装
2019独角兽企业重金招聘Python工程师标准>>> web服务器 linux+apache+tomcat+mysql+jsp+php 整合安装 自己的安装过程,以前发表在新浪博客 ...
- Web服务器 之 Apache 2.x 服务器中的URL重写的配置和应用
作者:北南南北 来自:LinuxSir.Org 摘要: 本文是关于Apache 2.x 服务器中的URL别名规则的文档,它是通过rewrite模块来实现的.能过URL别名规则,我们能看到一个干净的UR ...
- 几种Web服务器比较-(Apache、IIS、Lighttpd、Nginx、LiteSpeed、Zeus
到目前,Apache和IIS是用的最为普遍的Web服务器,但是它们太过单一,在此之外这里还有许多Web服务器软件,或是免费的或是商业的. In this article we present four ...
- Linux服务器搭建----Web服务器(apache)
WWW的介绍 万维网(亦作"Web"."WWW"."'W3'",英文全称为"World Wide Web"),是一个由许 ...
- JSP之WEB服务器:Apache与Tomcat的区别 ,几种常见的web/应用服务器
APACHE是一个web服务器环境程序 启用他可以作为web服务器使用 不过只支持静态网页 如(asp,php,cgi,jsp)等动态网页的就不行 如果要在APACHE环境下运行jsp 的话就需要一个 ...
- 大型网站用的什么服务器,大型网站在用什么web服务器?Apache, nginx, lighttpd
Apache, nginx (发音 engine x), lighttpd ( 发音 lighty) 是主流的web server, 大型网站都在用哪些web 服务器? yaozer做了个简单的调查, ...
- phpstudy配置web服务器(apache/Nginx)
一.配置apache 1.然后切换php版本 2.接着配置创建项目 (注:每个wamp/lamp架构可以创建n个项) (1)首先配置网址 (2)然后创建目录 (3)写配置文件(只需要复制就可以了) 配 ...
- 【Web服务器】Apache网页优化
文章目录 一.Apache网页优化概述 1.优化内容 2.网页压缩 2.1gzip概述 2.2作用 2.3Apache的压缩模块 概述 mod_gzip模块与mod_deflate模块 3.配置网页压 ...
最新文章
- html 链接 pdf,简单的HTML DOM只解析名称和含有PDF链接链接
- Codeforces Round #225 (Div. 1) E. Vowels 容斥 + sosdp
- java判断手机号_java使用正则表达式判断手机号的方法示例
- 非对称加密算法 --- RSA签名算法
- Document API
- phpcms 怎样实现PC端、手机端的双模版
- python中+和join()的区别
- prev php,PHP prev() 函数 ——jQuery中文网
- Python绘图新冠病毒COVID-19
- 终极免费云盘同步攻略
- aid learning安装应用_aidlearning下载-Aid Learning 安卓版v0.80-PC6安卓网
- Entity and Evidence Guided Relation Extraction for DocRED
- 【技术贴】解决前台js传参中文乱码
- 哈希表实现电话号码查询系统(c++)
- 华为PIM-SM 动态RP实验配置
- Android仿豆瓣FM卡片滑动
- 如何选择合适的前端框架,告别选择恐惧症
- 树莓派4B安装系统,pytorch,opencv搭建深度学习目标检测模型
- 应用系统外部接口数据稽核问题分析经历及经验分析
- Socket套接字编程
热门文章
- docx行间距怎么设置_word行间距怎么调?word行距调小调大固定值怎么调?
- Python学习之学校教学( 已知复数,请写出它的模、实部、虚部及共轭复数)
- IBM要做挑茶AI,茶叶小妹都乐疯了
- java 读取二进制文件_用Java读取二进制文件
- 猛犸Winform分页控件
- 我是IT小小鸟的读后感
- win7怎么打开微软更新服务器地址,Win7旗舰版上的windows update服务无法启动
- ActivityManagerService解读之Activity启动时间闲聊--Android Framework层时间计算介绍
- 机器学习与统计建模 —— 归一化和标准化
- Linux下service mysqld start 启动MySQL提示Redirecting to /bin/systemctl start mysqld.servic