更改WordPress网站的URL

来自站长百科
跳转至: 导航、​ 搜索

导航: 上一页 | 首页 | WordPress中文论坛 | WordPress主机 | CMS程序 | 论坛程序 | ECShop | ShopNC | PowerEasy

WordPress在数据库中存储了两个地址,这两个地址规定了博客文件和主索引的位置。正常安装情况下,这两个地址路径相同。

遇到以下两种情况时,用户需要进入数据库更改其中一个或者所有地址的设置:

  1. 试图在设置中更改博客URL或WordPress的URL并发生错误时
  2. 通过其他域名访问某个域名或子域名
更改网站URL前请备份数据库,将备份按保存在硬盘的方式保存在网站服务器上。参见:备份数据库

快速修正[ ]

通过FTP访问网站的用户可以在错误改动某些值的情况下,用该方法快速备份网站并重新运行网站:

  1. 通过FTP访问站点,复制当前主题的functions.php文件,在简单的文本编辑器(如记事本)中编辑该文件并上传回网站。
  2. 将以下两行代码添加到文件中首个"<?php"行之后:
update_option('siteurl','http://example.com/blog');
update_option('home','http://example.com/blog');

这里要将example.com换成用户的网站URL。

  1. 将文件按上次的路径上传回网站。FTP客户端软件FileZilla提供了灵活的“编辑文件”功能,帮助用户快速完成以上动作,因此用户可以选择使用这款软件。
  2. 加载几次登录或管理页面,网站备份完毕
  3. 重复以上步骤,但无需再加入代码行。重要:不要将代码行留在原处,网站运行后立即删除这些代码行。

主题中没有functions.php文件时:创建一个新的文本文件并命名为“functions.php”,用记事本编辑该文件,将以下代码添加到文本中(将其中的example.com替换为自己的网站URL):

<?php
update_option('siteurl','http://example.com/blog');
update_option('home','http://example.com/blog');

将文件上传到主图目录中,然后按上述步骤进行操作。操作完毕后删除文件。

重新定位[ ]

WordPress支持自动重定位方法,该方法可自动计算定位并更新定位值。将网站从一台服务器重新定位到另一台服务器上时,该方法能够快速协助网站开始运行。

用法:

  1. 编辑wp-config.php 文件
  2. 在“define”语句后添加如下代码:
define('RELOCATE',true);  
  1. web浏览器中访问wp-login.php页面
  2. 在正常状态下登录

RELOCATE flag为true时,系统会自动将网站URL更新到用户用以进入登录页面的路径。这样管理界面就可以立即在新URL上运行,其他设置不会发生变化。用户需要手动改变其它设置。

网站开始运行后,用户应该删除多余代码行,不能将他们激活。

直接在数据库中更改网站URL[ ]

如果知道如何在主机上访问phpMyAdmin,可以直接编辑文件然后运行网站。

  1. 备份数据库并将备份保存在其它地方
  2. 登录PhpMyAdmin
  3. 点击链接进入数据库
  4. 显示数据库列表,选择存放WordPress的数据库
  5. 数据库中所有表格都会显示在屏幕上
  6. 在表格列表中查找 wp_options。注意:表格前缀wp_可能会因为用户安装时的改动而有所不同
  7. 单击Browse按钮
  8. 在wp_options表中弹出一个字段列表窗口
  9. 在option_name字段以下查找siteurl
  10. 单击内容首行最左边的Edit Field图标
  11. Edit Field窗口被打开
  12. 在option_value的输入框中将原有URL改为新URL地址
  13. 检查操作的正确性,单击Go保存
  14. 页面返回到wp-options表格
  15. 在表格中查找home字段,单击Edit Field。注意在wp_options中有很多页表格,点击>进入下页面。
  16. 在 option_value输入框中将原有URL改为新URL地址
  17. 检查操作的正确性,单击Go保存
  18. 删除文件夹wp-content/cache(WordPress 2.0新增文件夹)
  19. 完成

更改域名[ ]

谨慎操作。
请先备份数据库:备份数据库
以下操作将无法撤销。操作过程中没有“取消”或“恢复”选项,所有操作效果都将是永久性的,请注意可能造成的不良影响。
更改域名时需要进行数据库还原 ,还原完毕后将所有文件上传到新地址中。

此时博客会停止运行。

1. 数据库

根据以上操作说明在数据库中更改信息

2. 进入数据库

  1. 登录进入 PhpMyAdmin
  2. 备份数据库并将备份保存在其它地方
  3. 登录进PhpMyAdmin
  4. 点击链接进入数据库
  5. 显示数据库列表,选择存放WordPress的数据库
  6. 在数据库中查找原先储存日志信息的表格名称。通常情况下表格名为wp_posts,但名称有可能被更改。记下表格名称。
  7. 点击Browse按钮或链接,打开wp_posts表格
  8. 查找储存文章“guid”的字段。通常情况下字段名称为guid,但名称有可能被更改。记下字段名称。
  9. 点击表格顶端,进行SQL查询。
  10. 根据以上操作中记录的信息以及新旧URL地址,用户可能希望更新数据库,输入以下代码(慎重):
UPDATE wp_posts SET guid = REPLACE (
guid,
'http://exampleoldsiteurl.com',
'http://examplenewsiteurl.com');
  1. 确保wp-posts与posts_content的名称与数据库中的表格和字段名称相匹配。修改不匹配的名称。
  2. 确保希望改动的文本在单引号内,以及所有语句都没有拼写错误。
  3. 再次用SQL对话框检查所有操作。保证其正确性。该操作将无法恢复。
  4. 确定一切操作无误后,单击Go
  5. 屏幕顶端生成一个列表,显示所更改的表格和字段数量。

更改模板文件[ ]

用户需要在自己的WordPress主题中逐个打开模板文件并查找曾经手动输入的原有域名,将其替换为新域名。在sidebar.php and footer.php等各式模板文件中查找特定手写代码链接。

根据输入管理面板>设置>常规l栏的信息,WordPress用一个名为bloginfo()的模板标签自动生成用户的网站地址。不必修改该模板标签

更改Config文件[ ]

如果数据库以某种方式被移动或更改,用户需要相应更新WordPress的configuration文件。

  1. 用户需要在以下情况发生时修改config文件:
    • 数据库转移到另一台服务器上,目前不在本地运行
    • 重命名数据库
    • 更改数据库的用户名
  2. 备份wp-config.php文件
  3. 在文本编辑器中打开wp-config.php文件
  4. 检查文件内容。尤其注意查找数据库主机入口
  5. 保存文件

这时WordPress就可以运行了。

检验URL资料[ ]

  1. 进入管理面板>设置>常规,在这里查看之前的URL更改是否正确。
  2. 确保WordPress URL的引用中含有新链接地址
  3. 确保博客URL的引用中含有新链接地址
  4. 如果做了更改,点击Save Changes

更改.htaccess文件[ ]

如果用户使用固定链接或其他任何改写以及重定向方式,需要在管理面板>设置>常规中更改资料后更新.htaccess文件。

  1. 备份.htaccess文件,这是必要条件
  2. 在文本编辑器中打开.htaccess文件
  3. 检查文件内容并查找用户曾经输入的所有自定义改写或重定向。为安全起见,将这些改动复制并保存到另一个文本文件。
  4. 关闭文件
  5. 根据Permalinks SubPanel上的说明,将永久链接更新到.htaccess文件
  6. 打开新的.htaccess文件,检查自定义改写或重定向是否还在。如果不在,请将第三步中保存的信息复制到新的.htaccess文件中。
  7. 对自定义改写和重定向做必要改动以显示新的URL地址
  8. 保存文件
  9. 测试重定向是否有效

如果中途发生错误,可以在备份中还原数据库,然后再次操作。尽量保证一次成功。

其它信息[ ]

本文中大多数内容摘自Podz' WordPress Guides

SQL数据库中进行查找&替换时需要注意:

  1. 图片链接:图片链接保存在wp_posts表中的"post_content"里。用户可以使用上文中的代码来更新图片链接。
  2. wp_options:除了上文中提到的"siteurl"和"home"词条,还有其他需要更改的option_value,例如"upload path"以及一些插件词条(取决于用户所安装的软件,如widgets,统计表,DMS留言板,网站地图等)
  3. 为所有剩下的词条做数据库全文搜索。确保自己所修改的内容,检查任何可能被不慎替换的词条。

相关条目[ ]