我正在尝试将Wordpress网站移动到新服务器。域名也从“olddomain.com”更改为“newdomain.com”。
为此,我将所有文件移动到新服务器并在Apache中设置虚拟主机。然后我使用脚本(http://interconnectit.com/124/search-and-replace-for-wordpress-databases/)将“olddomain.com”的实例替换为“newdomain.com”。
当我在浏览器中访问时,我网站的主页正在运行。但是,我的其他网页(例如“newdomain.com/about/”)都没有工作 - 它们返回404.
我检查了我的Apache错误日志并获得了以下日志。
[client 69.184.72.91] File does not exist: /home/david/wordpressSiteFiles/about, referer: http://newdomain.com/
为什么Apache在我的服务器上查找名为“about”的文件?这是我现在的.htaccess文件。
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
答案 0 :(得分:1)
听起来你有重写规则需要更新。查找.htaccess
文件。
答案 1 :(得分:1)
您是否在服务器上设置了allowoverride? http://codex.wordpress.org/Using_Permalinks
必须在httpd.config或.htaccess中设置allowoverride 完全被忽略了。
您的服务器可能未启用AllowOverride指令。如果 Apache httpd.config中的AllowOverride指令设置为None 文件,然后.htaccess文件被完全忽略。在这种情况下, 服务器甚至不会尝试读取.htaccess文件 文件系统。
来源 http://wordpress.org/support/topic/wordpress-cant-find-my-new-pages
几天前我遇到了同样的问题,并修复了它!