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

本文涉及的产品
.cn 域名,1个 12个月
简介: 不论我们打算将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/
目录
相关文章
|
2月前
【wordpress教程】wordpress博客网站添加非法关键词拦截
有的网站经常被恶意搜索,站长们不胜其烦。那我们如何屏蔽恶意搜索关键词呢?下面就随小编一起来解决这个问题吧。
49 1
|
4月前
|
PHP
菊子曰备份Wordpress网站的博客内容出错的解决办法(原创)
菊子曰备份Wordpress网站的博客内容出错的解决办法(原创)
511 2
|
3月前
|
Ubuntu 编译器 Windows
ubuntu 18.04安装ftp为wordpress添加ftp
ubuntu 18.04安装ftp为wordpress添加ftp
51 0
|
2月前
|
弹性计算 关系型数据库 MySQL
使用资源编排 ROS 轻松部署单点网站——以 WordPress 为例
WordPress 是流行的开源CMS,阿里云的ROS(Resource Orchestration Service)提供模板化部署服务,简化云上环境如VPC、ECS、MySQL的创建。用户可通过ROS控制台选择模板一键部署WordPress,配置包括实例区、类型、系统盘及密码等参数。ROS模板定义了资源、参数和输出,自动处理依赖关系,实现云资源和应用的自动化部署。通过ROS,用户可以高效管理和更新整个资源栈,实现快速、可靠的云服务部署。
186 1
使用资源编排 ROS 轻松部署单点网站——以 WordPress 为例
|
2月前
|
存储 前端开发 定位技术
关于如何用wordpress搭建付费资源网站,modown付费主题推荐
关于如何用wordpress搭建付费资源网站,modown付费主题推荐
关于如何用wordpress搭建付费资源网站,modown付费主题推荐
|
28天前
|
安全 Ubuntu 网络安全
如何在Ubuntu上配置WordPress安全更新和安装
如何在Ubuntu上配置WordPress安全更新和安装
34 0
|
2月前
|
搜索推荐
wordpress网站添加一个临时维护功能
wordpress网站添加一个临时维护功能
41 3
|
2月前
|
Ubuntu 关系型数据库 MySQL
Ubuntu系统本地搭建WordPress网站并发布公网实现远程访问
Ubuntu系统本地搭建WordPress网站并发布公网实现远程访问
|
3月前
|
弹性计算 Java Linux
部署单点WordPress网站
在特定场景下编写模板的流程比较固定,本篇文章以《部署单点 WordPress 博客平台》为例,讲述如何完成一个部署成功率高、适配场景广的模板。大多数在 ECS 上部署应用的模板都可以参考此教程来编写。
27470 4
|
2月前
|
PHP 数据安全/隐私保护
WordPress网站添加输入密码才能访问功能
为你的网站添加 php 输入密码访问网站功能,这个功能其实很简单,在应用中的场景也是往往为内部或是个人使用的页面里面,在登陆的时候可以弹出一个窗口,做隐私保护,以下的代码可以满足大家的这个功能,同时可以在代码里自定义密码。同时只要在现有代码的上下添加好加密的代码就可以。记得要调整一下默认密码。不然会被入侵的。
28 0