将WordPress安装在网站子目录的相关问题

简介: 不论我们打算将WordPress博客作为网站的子域名(wordpress.example.com)、子目录(example.com/wordpress),还是作为网站的主域名(yourdomain.com)使用,都建议将WordPress安装在子目录而不是网站的根目录中,这主要是为了方便网站维护。

不论我们打算将WordPress博客作为网站的子域名(wordpress.example.com)、子目录(example.com/wordpress),还是作为网站的主域名(yourdomain.com)使用,都建议将WordPress安装在子目录而不是网站的根目录中,这主要是为了方便网站维护。

因为在网站根目录内,除了 WordPress 文件目录之外,一般还有其他许多个不同用途的文件和文件夹。尽管我们同样可以将这些文件和文件夹与 WordPress 的文件混合在一起,但是对于维护 WordPress 而言,则增加了不少的麻烦。即使将WordPress安装在网站的子目录中,仍可以显示为网站根目录的域名。

本文介绍将WordPress安装在网站子目录中的相关问题,分几种情况进行介绍,您可以按需查看。

一、WordPress 已经安装在根目录,希望将其转移到子目录,但使其仍具有主域名的地址

1、新建一个用来存放WordPress核心文件的新文件夹(本例以/wordpress示范)。

2、进入设置 - 常规General)面板。

3、找到WordPress address (URL)(中文用户请查找“WordPress 地址(URL)”)这个选项:把后面的地址改成你存放WordPress文件的文件夹地址。比如:http://example.com/wordpress

4、找到Site address (URL)(中文用户请查找“站点地址(URL)”)这个选项:把此地址改为你网站的根目录的URL。例如:http://example.com

5、点击Save Changes(中文用户为“保存更改”,不要担心会看到错误提示,之后也无需尝试访问你的博客,因为此时会提示文件不存在的错误)。

6、把WordPress的核心文件转移到你新建的文件夹中,也就是刚设置的“WordPress address (URL)”这个目录,示范中就是/wordpress目录。

7、把wordpress目录中的index.php和.htaccess文件复制(不建议移动)到根目录(即设置中的“Site address (URL)”)中。(如果你是在Windows IIS 主机下使用固定连接,则会看到web.config文件而不是.htaccess文件,此时应将web.config文件移动到根目录,而不是复制它;对index.php的操作不需要改变。)

8、用文本编辑器打开并编辑根目录下”index.php”这个文件。

9、找到如下代码,修改并保存:找到

require('./wp-blog-header.php');

把地址改为你WordPress目录下的文件:

require('./wordpress/wp-blog-header.php');

10、登陆控制面板,新的控制面板地址为:http://example.com/wordpress/wp-admin/

11、如果你设置了固定连接(Permalinks),打开永久链接选项面板,更新Permalinks结构。如果.htaccess已经设置了正确的权限,WordPress会自动更新你的.htaccess文件。如果 WordPress不能写入你的.htaccess文件,就会显示新的rewrite规则,因此你就需要手动把rewrite规则复制到根目录中的.htaccess文件中。

二、WordPress 已经安装在子目录中,希望使用根目录域名显示WordPress博客

如果你已经在子目录中安装了WordPress(例如 http://example.com/wordpress),但是希望通过主域名example.com 来访问,请按照如下步骤操作:

1、进入设置 - 常规General)面板。

2、找到Site address (URL)(中文用户请查找“站点地址(URL)”)这个选项:把此地址改为你网站的根目录的URL。例如:http://example.com

3、点击Save Changes(中文用户为“保存更改”,不要担心会看到错误提示,之后也无需尝试访问你的博客,因为此时会提示文件不存在的错误)。

4、把wordpress目录中的index.php和.htaccess文件复制(不建议移动)到根目录(即设置中的“Site address (URL)”)中(一般是 www 或者 public_html之类的目录)。注意.htaccess文件具有隐藏属性,可能需要更改你的FTP客户端设置来显示它。未启用固定连接的WordPress可能不会生成.htaccess文件,此外如果你是在Windows IIS 主机下使用固定连接,则会看到web.config文件而不是.htaccess文件,此时应将web.config文件移动到根目录,而不是复制它;对index.php的操作不需要改变。)

5、用文本编辑器打开并编辑根目录下”index.php”这个文件,找到如下代码,修改并保存:找到

require('./wp-blog-header.php');

把地址改为你WordPress目录下的文件:

require('./wordpress/wp-blog-header.php');

6、登陆控制面板,新的控制面板地址为:http://example.com/wordpress/wp-admin/

7、如果你设置了固定连接(Permalinks),打开永久链接选项面板,更新Permalinks结构。如果.htaccess已经设置了正确的权限,WordPress会自动更新你的.htaccess文件。如果 WordPress不能写入你的.htaccess文件,就会显示新的rewrite规则,因此你就需要手动把rewrite规则复制到根目录中的.htaccess文件中。

三、将网站主页的URL指向子目录

某些情况下,你将WordPress安装在子目录中,也将其显示为包含子目录的地址,例如http://example.com/wordpress,但是希望人们访问根目录 http://example.com时,浏览器自动重定向到WordPress的地址 http://example.com/wordpress。

另一个具有说服力的例子是一个年度会议的网站,每年的会议网站使用一个子域名yoursite.com/2011,/2012,/2013等,但是你希望当访客访问网站主域名yoursite.com时,自动重定向到最近的一次会议网站,例如yoursite.com/2013。(重定向意味着浏览器的地址栏会发生,访客知道他们正在访问yoursite.com/2013。)

这也很容易做到,详见如下步骤:

1、在子目录中安装WordPress,例如/blog;

2、在根目录中找到.htaccess文件,向文件中加入如下代码:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?YourDomain.com$
RewriteRule ^(/)?$ blog [L]

其中YourDomain.com替换为你的网站主域名,blog替换为你的子目录名。

注意:

这些步骤貌似很麻烦但实际操作起来很简单,写得比较详细了,相信稍有经验的人一眼就可以看懂。此外注意操作步骤要严格按照这上面的来每布的顺序不要弄错,否则你可能就进不了后台,或者页面无法打开。

上面文字所述的“根目录”和“子目录”也是相对的概念,如果你的英文博客安装到二级域名,或者子目录内,比如 http://yourdomain.com/en ,你也同样可以将 WordPress 目录安装到http://yourdomain.com/en/wordpress 子目录内,以便于升级和维护。

以上迁移网站地址的过程,并未考虑对网站内容的影响。如果你并不是安装一个新网站,而是迁移一个已经运行一段时间的博客,网站数据库中可能已经存储有原网站的URL。此问题的解释可以参考WordPress Codex:Moving WordPress——when your domain name or URLs change.

参考资料:

[1] WordPress Codex: Giving WordPress Its Own Directory

[2] Site 5: How to Redirect Your Domain to a Subfolder Using .htaccess

如何联系我:【万里虎】www.bravetiger.cn 【QQ】3396726884 (咨询问题100元起,帮助解决问题500元起) 【博客】http://www.cnblogs.com/kenshinobiy/
相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
目录
相关文章
|
1月前
|
安全
SiteGround如何设置WordPress网站自动更新
iteGround Autoupdate功能会自动帮我们更新在他们这里托管的所有WordPress网站,这样做是为了保证网站安全,并且让它们一直保持最新状态。他们会根据我们选择的设置自动更新不同版本的WordPress,包括主要版本和次要版本。在每次自动更新之前,他们都会为我们的网站做一个完整的备份,这样如果有什么问题,我们可以轻松地恢复到之前的状态。在本文中,我们将介绍如何在SiteGround中设置WordPress网站自动更新。
37 0
SiteGround如何设置WordPress网站自动更新
|
3月前
WordPress网站更换域名后如何重新激活elementor
本文讲解WordPress网站更换域名后如何重新激活elementor。首先你需要在WordPress后台elementor下点击Disconnect断开原elementor连接,然后登录elementor官网,在后台解除原网站授权;接着在WordPress后台重新连接并激活elementor。
64 2
WordPress网站更换域名后如何重新激活elementor
|
3月前
给WordPress网站增加一个带时间的led广告牌
给WordPress网站增加一个带时间的led广告牌
31 3
|
1月前
|
关系型数据库 MySQL Apache
怎么在树莓派上搭建WordPress博客网站,并发布到外网可访问?
怎么在树莓派上搭建WordPress博客网站,并发布到外网可访问?
|
3月前
|
域名解析 弹性计算 数据安全/隐私保护
阿里云ECS免费搭建WordPress个人博客网站
阿里云ECS免费搭建WordPress个人博客网站
455 2
阿里云ECS免费搭建WordPress个人博客网站
|
1月前
|
关系型数据库 MySQL PHP
wordpress博客系统详细安装部署教程
wordpress博客系统详细安装部署教程
wordpress博客系统详细安装部署教程
|
5月前
|
NoSQL 安全 PHP
手把手教你搭建WordPress博客网站并发布至公网(上
手把手教你搭建WordPress博客网站并发布至公网
166 0
|
6月前
|
域名解析 网络协议
如何为树莓派上的WordPress博客网站配置自己的域名,并且外网可访问?
如何为树莓派上的WordPress博客网站配置自己的域名,并且外网可访问?
|
2月前
|
存储 XML 前端开发
信息收集 -- WordPress网站
信息收集 -- WordPress网站
25 0
|
3月前
|
数据库 数据安全/隐私保护 SEO
如何像我这样创建一个酷炫且能赚钱的网站(使用宝塔安装WordPress搭建子比主题)
如何像我这样创建一个酷炫且能赚钱的网站(使用宝塔安装WordPress搭建子比主题)
45 0
如何像我这样创建一个酷炫且能赚钱的网站(使用宝塔安装WordPress搭建子比主题)