Wordpress建站问题记录

从一月到七月因为工作的情况没有进行太深入的开发,想着整理一下把做一个独立站把博客多个渠道发布一下,遇到几个问题在这里记录一下.

先写一下我的配置

系统: centos7

php: 7.4

wordpress: 6.6.1

mysql:8.0.6

1. HTTP 500 Internal

这个问题出现在我将wordpress的文件夹全部删除然后重新解压,并且将文件夹及文件的权限全部放开的情况下出现,之后查看httpd的错误报告发现是权限错误,

复制代码
sudo tail -f  /var/log/httpd/ssl_error_log

排查之后觉得应该是selinux的问题,查看selinux的状态

复制代码
sestatus

觉得是selinux的策略问题导致,所以将enforece修改为0之后所有的页面都可以访问

复制代码
sudo setenforce 0

所以如果排查了上面的动作之后可以和我一样首先查看log然后selinux,下面是修改方式(来源于chatgpt):

复制代码
1.
sudo ausearch -m avc -ts today
2. 我在普通文件夹中保存权限问题报错,后来全部放到tmp文件下,这种文件最好也是在一个同一个地方保存
sudo grep httpd /var/log/audit/audit.log | audit2allow -M mywordpresspolicy
3.
sudo semodule -i mywordpresspolicy.pp
4.
sudo chcon -R -t httpd_sys_content_t /var/www/html/wordpress
5.
sudo chcon -R -t httpd_sys_rw_content_t /var/www/html/wordpress/wp-content/uploads
6.
sudo semanage fcontext -a -t httpd_sys_content_t "/var/www/html/wordpress(/.*)?"
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/wordpress/wp-content/uploads(/.*)?"

2. 站点位置与实际位置不一致

就像上面你的两个希望在最后的网站中不需要额外的增加wordpress,直接修改过后查看文章会出现 404的情况并且查看日志可以看到index.php定向没有将wordpress自动加上,所以下面重新将官网的内容梳理了一遍,修改过后文章链接与访问均正常.

修改 index.php 文件

你需要将 WordPress 的 index.php 文件复制到站点根目录(即 /var/www/html),并更新其内容,使其指向实际的 WordPress 安装目录:

2.1 复制 index.php 文件:

复制代码
cp /var/www/html/wordpress/index.php /var/www/html/

编辑复制后的 index.php 文件:

2.2 找到代码,6.6.1此处DIR为FILE

复制代码
require( dirname( __DIR__ ) . '/wp-blog-header.php' );

修改为:

复制代码
require( dirname( __DIR__ ) . '/wordpress/wp-blog-header.php' );

保存文件并退出编辑器。

2.3 确保 .htaccess 文件配置正确

在根目录 /var/www/html 和 WordPress 目录 /var/www/html/wordpress 中,检查 .htaccess 文件的配置。

编辑 .htaccess 文件(如果没有,创建一个)

查看隐藏文件的命令为

复制代码
ls -a

查看文件:

复制代码
sudo nano /var/www/html/.htaccess

2.4 确保 .htaccess 文件内容如下(如果你启用了自定义永久链接):

复制代码
<?php
/**
 * Front to the WordPress application. This file doesn't do anything, but loads
 * wp-blog-header.php which does and tells WordPress to load the theme.
 *
 * @package WordPress
 */

/**
 * Tells WordPress to load the WordPress theme and output it.
 *
 * @var bool
 */
define( 'WP_USE_THEMES', true );

/** Loads the WordPress Environment and Template */
require __DIR__ . '/wordpress/wp-blog-header.php';

然后保存并关闭文件。

2.5 编辑 /var/www/html/wordpress/.htaccess,确保其内容类似:

复制代码
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

2.6. 更新永久链接,修改完成后,重置永久链接结构:

登录到 WordPress 管理后台。

转到设置 > 永久链接 。

选择其他永久链接结构并保存,然后再改回原来的结构并保存,以刷新 URL 路径。

  1. 检查服务器配置

确保 Apache 或 Nginx 配置没有阻止对新站点地址的访问,并且重写模块已经启用。路径/etc/httpd/conf/httpd.conf

复制代码
Include conf.modules.d/*.conf
LoadModule php7_module modules/libphp7.so

LoadModule rewrite_module modules/mod_rewrite.so

3. wordpress更改的位置

3.1 ssl

存储位置

复制代码
/etc/httpd/ssl/bimath.com_apache/

ssl.conf /etc/httpd/conf.d/ssl.conf

复制代码
DocumentRoot "/var/www/html"
ServerName bimath.com:443

3.2 httpd.conf /etc/httpd/conf/httpd.conf

复制代码
Include conf.modules.d/*.conf
LoadModule php7_module modules/libphp7.so
LoadModule rewrite_module modules/mod_rewrite.so
# serverName
ServerName www.bimath.com:443
# wordpress
<Directory /var/www/html/wordpress>
    AllowOverride All
    Require all granted
</Directory>

3.3 wp-config.php

复制代码
/** WordPress 目录的绝对路径。 */
if ( ! defined( 'ABSPATH' ) ) {
        define( 'ABSPATH', __DIR__ . '/' );
}

define('WP_TEMP_DIR', ABSPATH.'wp-content/tmp');
define("FS_METHOD", "direct");
define("FS_CHMOD_DIR", 0777);
 define("FS_CHMOD_FILE", 0777);

/** 设置 WordPress 变量和包含的文件。 */
require_once ABSPATH . 'wp-settings.php';
相关推荐
Linux运维技术栈8 小时前
近期 PHP 高危安全风险排查与多环境升级实操
开发语言·安全·php
Fnetlink18 小时前
Fnet 云网安 261023
运维·开发语言·网络·人工智能·安全·web安全·php
ESDWAN9 小时前
SD-WAN 主备切换为什么仍会断网?从检测、切换到会话恢复分析
运维·开发语言·网络·php
SuperHeroWu711 小时前
ArkGenie 的技术原理:从一段 SSE 到一个可交互 Surface
开发语言·php·交互
nlp研究牲11 小时前
Linux 常用命令速查手册:英文全称、中文释义、巧记方法与实战示例
linux·运维·php
企业解惑小助手11 小时前
上网行为监控软件有哪些?部署后终端卡顿、断网、审计缺失怎么办?一份完整故障排查手册
开发语言·php
马立杰12 小时前
Docker Build 编译补丁版 PHP7.4 FPM 容器镜像教程(CVE-2026-109618 CVE-2026-109619)
运维·docker·容器·php
隔窗听雨眠14 小时前
从PHP2Shell回望:PHP内核漏洞的二十年演进与AI时代的攻防转折
开发语言·人工智能·php
hunteritself14 小时前
AI 挖出 PHP「致命漏洞」!欧洲政府连夜关站,日本首相紧急喊话
开发语言·人工智能·php
李纲明14 小时前
WordPress 媒体库上传图片报「HTTP 错误」:php.ini、临时目录、安全插件和 CDN 怎么逐层查
运维·php·上传·cdn·wordpress·媒体库