WordPress整合Nginx网站部署

没有时间来重构之前的博客,只能偷懒用wordpress了。不会php,在安装php的过程中踩了不少的坑。整理下做个备忘。

vps安装的是centos7  默认yum源只有5.4的php版本,所以先添加webstatic的源:

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

然后搜索php7的包:

yum list php71*

必定安装的基础包:fpm,cli,common,mysql(或者mysqlnd),当时就执行了这么一个安装yum install php71w 然后什么基础包都没有,发现任何命令都不能使用,后来还是请教了学习php的朋友才明白。。。(当然直接搭建LNMP环境最简单)

然后就开始安装wordpress(数据库创建略过),发现后台地址一直404,百度发现需要对后踢地址做一个重写(nginx里直接配置即可):

rewrite /wp-admin$ $scheme://$host$uri/ permanent;

现在404倒是没有了,静态资源js,css什么的都正常访问,但是所有php页面却直接弹出下载框,朋友说nginx里要配置php的(。。。。怎么这么麻烦):

location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME wordpress文件夹路径$fastcgi_script_name;
fastcgi_pass 127.0.0.1:9000;
}

安装完成,数据库表都成功生成,然后跳转后台登陆,一切都正常,当我试图进入站点首页的时候一直403,继续百度,发现是文件夹权限的问题,wordpress文件夹没有权限会导致403,于是修改wordpress文件夹及其子文件权限和所有者,重载nginx配置后依旧403,想到我的nginx是用root启动的,然后将权限全部改为root,还是没有改变。继续百度,发现nginx没有配置首页index也会导致403,添加了依旧不行。百度吧,发现php-fpm服务默认是用Apache用户启动的,我的nginx不是root启动的吗?这有权限才怪了。。。。遂将php-fpm启动用户改为root:
/etc/php-fpm.d/www.conf

user = root
group = root

好了服务启动失败。。。。百度发现php-fpm无法用root启动(很麻烦),于是将wordpress文件夹组和所有者全部改为nginx,php-fpm也改为nginx重启所有服务,大功告成,总算全部搞定,剩下的就是对wordpress的一些调优了。

总结整个过程发现最坑的莫过于php-fpm服务默认以Apache用户启动,很容易导致403。ok这是用wordpress水的第一篇文章。

PS:补充更新一个大坑

安装了redis(memcached不清楚)等对象缓存插件的时候,super cache是不能启用对象缓存功能的(实验室功能),否则就无法使用预缓存功能(无法生成html缓存文件)。

最近又发现博客主页不能稳定缓存,老是生成最新的缓存给用户,谷歌(百度没有任何相关结果)发现这个主要是设置的问题,在高级里面有个缓存重建,当新缓存生成事调用缓存文件给匿名用户这个选项是推荐的没有多想就勾选了,就导致了这个问题,不勾选即可解决首页反复缓存的问题。

 

  
BugHome版权所有丨转载请注明出处:https://minei.me/archives/89.html
  

发表评论

电子邮件地址不会被公开。 必填项已用*标注