我在将WordPress安装在子目录上遇到了问题
首先
由于在将现有运行的WordPress网站迁移到EC2时遇到了环境设置的问题,因此写下了备忘录。
开发环境
EC2, RDS, Apache(2.4),WordPress 可以在中国境内访问。
我想实现的目标
当通过 example.com/wp/ 访问时,将显示 WordPress 网站。
请注意,这里假设子目录名为 wp。
沉迷其中
当通过/wp/访问时,WordPress的某些页面会显示出来,但当试图跳转到网站内的其他页面时,却出现了“404”错误。。。
我尝试过各种更改 Apache 的文档根目录以及 WordPress 的 URL 配置,但都无法解决问题。后来向 chatGPT 请求帮助,他们很快就帮我解决了。
结论
需要重新审视以下3个设置!
1. WordPress的URL设置
2. .htaccess文件的设置
3. Apache的设置
只需要一个选项,请用汉语将以下内容重新表达出来:
① 设置WordPress的URL
由于无法进入管理界面,所以我直接进行了编辑。
// wp-config.php に以下を追記
define('WP_HOME','https://example.com/wp/');
define('WP_SITEURL','https://example.com/wp/');
2. 对.htaccess文件进行配置
这是为了确保Apache能正确重定向。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wp/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wp/index.php [L]
</IfModule>
③ Apache的配置应调整。
或者:
③ 需要对Apache进行设置。
请添加以下内容以使Apache能够读取.htaccess文件,并重新启动Apache。
<Directory "/var/www/html/hp">
AllowOverride All
</Directory>
最后
ChatGPT非常伟大。