#每日一记#LNMP Wordpress phpMyAdmin的部署记录
  

zqm 967

{{ttag.title}}
背景
CentOS 8.2服务器,使用的虚拟服务器。只开放22与80端口。设置默认页面是wordpress的入口,phpmyadmin使用虚拟目录的形式进行访问。

安装
总体思路按照此文章进行。我进行的还算顺利。

有的package教程上说有,但是自己使用yum install却说没有#
需要安装yum install epel-release,这样很多拓展的包才可用。如果还不行,然后最好设置一下etc/yum.repo.d/epel.repo,将其中的非debug项目都enable=1。

使用yum install wordpress进行安装#
之前使用CentOS7自带的源中,有wordpress,可以使用yum install wordpress的方式进行安装,需要设置一下工作目录,或者直接使用ln命令做一个软链接,创建一个wordpress到/usr/share/nginx/html/的链接,即可正常使用。

安装极慢#
可以考虑使用国内安装源进行,国内有https://mirrors.ustc.edu.cn/https://mirrors.tuna.tsinghua.edu.cn/
,两个都可以用,除了baseOS以外,还都有epel的源。

配置
无法安装wordpress插件,提示无法创建目录。#
需要给wp-content、wp-content/plugins、wp-content/uploads、wp-content/themes分配权限,使用chmod分配755权限,使用chown -R nginx:nginx ./wp-content分配nginx访问的权限。

phpMyAdmin提示session_start(): open(SESSION_FILE, O_RDWR)) failed: Permission denied (13)#
这篇文章说了下原理,我的情况比较符合这种,session目录就在/var/lib/php/session这个位置,chown设置一下权限,就OK了。

wordpress提示上传文件有2M限制或者提示413 Request Entity Too Large。#
找到etc/php.ini,修改
upload_max_filesize
post_max_size
max_execution_time
max_input_time
max_input_vars
memory_limit
都调整成大的数值。然后,在nginx.conf中设置

Copy
server {
    listen 80;
    listen [::]:80;
    root /var/www/html/wordpress;
    index index.php index.html index.htm;
    server_name example.com www.example.com;
        #注意这一行是关键
    client_max_body_size 100M;

location / {
    try_files $uri $uri/ /index.php?$query_string;
   }

location ~ \.php$ {
      include snippets/fastcgi-php.conf;
      fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      include fastcgi_params;
      #注意这几行,谨慎设置,可能导致运行速度变慢。
      fastcgi_connect_timeout 300s;
      fastcgi_read_timeout 300s;
      fastcgi_send_timeout 300s;
  }
}
然后执行

Copy
sudo systemctl reload nginx.service
sudo systemctl reload php-fpm.service
就可以正常工作了。

phpMyAdmin无法正常被nginx解析#
在etc/nginx/default.d/下面新建一个phpmyadmin.conf文件

Copy
    location /phpmyadmin {
           root /usr/share/nginx/html;
           index index.php index.html index.htm;
           location ~ ^/phpmyadmin/(.+\.php)$ {
                   try_files $uri =404;
                   root /usr/share/nginx/html/;
                   fastcgi_pass unix:/run/php-fpm/www.sock;
                   fastcgi_index index.php;
                   fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                   include /etc/nginx/fastcgi_params;
           }
           location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
                   root /usr/share/nginx/html/;
           }
    }
重启之后即可正常。

PHP无法被nginx加载,所有php网页都提示404错误。#
php -v命令显示正常,服务也在正常运行,但是无法正常解析,提示找不到文件(比如index.php)。

检查etc/nginx/default.d/php-fpm.conf文件,fastcgi_pass可能设置的路径不正确。正确应该为:

Copy
fastcgi_pass   unix:/run/php-fpm/www.sock;
wordpress安装插件时,提示连接FTP,要求提供FTP的信息#
设置/usr/share/nginx/html/wp-config.php,增加一项:

Copy
define('FS_METHOD', 'direct');
重启php-fpm即可。

打赏鼓励作者,期待更多好文!

打赏
2人已打赏

发表新帖
热门标签
全部标签>
每日一问
技术盲盒
干货满满
技术笔记
新版本体验
产品连连看
GIF动图学习
技术咨询
自助服务平台操作指引
标准化排查
2023技术争霸赛专题
功能体验
通用技术
秒懂零信任
信服课堂视频
社区帮助指南
答题自测
安装部署配置
上网策略
运维工具
SANGFOR资讯
设备维护
技术晨报
每日一记
用户认证
项目案例
玩转零信任
深信服技术支持平台
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
测试报告
日志审计
问题分析处理
流量管理
云计算知识
原创分享
解决方案
sangfor周刊
VPN 对接
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选

本版版主

461
244
13

发帖

粉丝

关注

本版达人

feeling

本周分享达人

新手29676...

本周提问达人