移动wordpress网站-得到404个错误


Moving wordpress site - getting 404 errors

我将一个网站从第三方转移到了内部IP。

我解压缩了WP安装并导入了mysql DB并运行了以下查询:

UPDATE wp_options SET option_value = replace(option_value, 'http://olddomain.com', 'http://newdomain.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'http://olddomain.com','http://newdomain.com');
UPDATE wp_posts SET post_content = replace(post_content, 'http://olddomain.com', 'http://newdomain.com');

我可以看到我的新index.php,甚至可以登录到管理部分,但我无法访问页面中的任何链接。我有404个错误。管理页面会正确列出新域。

我可能错过了.htaccess或重新网站规则,我不确定该怎么办。

任何建议都将不胜感激。

是的,它可能是你的.htaccess文件。你应该尝试在Wordpress管理员中更新你的永久链接。将永久链接切换到不需要.htaccess文件的默认值,然后将它们切换到要使用的文件。这通常对我有效。

这可能是一个永久链接问题。

从管理面板中检查Permalink选项,并将其与链接进行比较,看看它们是否正确,这可能会有所帮助。

只需在"设置"下打开永久链接页面,然后再次保存即可。在大多数情况下,这应该可以修复404错误。

移动数据库(wordpress和其他数据库)时,我通常会用文本编辑器打开数据库转储,并用新文件系统路径搜索/替换旧文件系统路径的所有实例,用新url替换旧url。这将确保您不会错过任何表或列。如果数据库太大,无法用文本编辑器打开,那么我会编写一个简单的脚本来解析它并进行替换。然后在替换完成后,我进行导入。

感谢您的帮助。我从这里得到了解决方案。。

http://www.virtualmin.com/node/17048

是否要将站点移动到Windows Server????

如果您能够看到主页或管理主页,但在迁移到Windows Server时出现404错误,以下是如何修复该错误的方法。

为了正确解决请求,网站需要对子目录进行一些重定向。以下htaccess规则需要从URL重写模块导入。

# BEGIN WordPress
RewriteEngine On
#RewriteBase /
RewriteRule ^index'.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule  ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]
RewriteRule  ^[_0-9a-zA-Z-]+/(.*'.php)$ $1 [L]
RewriteRule . index.php [L]
<IfModule mod_security.c>
<Files async-upload.php>
SecFilterEngine Off
SecFilterScanPOST Off
</Files>
</IfModule>
# END WordPress

将其粘贴到"导入规则">"重写规则"部分后,点击右上角的"应用"以创建URL重写。您能够确认该网站现在正按预期运行。如果您有任何其他问题或顾虑,请告诉我们!