你怎么告诉Wordpress忽略一个文件夹,支持永久链接?

时间:2017-01-04 17:55:45

标签: wordpress .htaccess

我的客户有一个非WordPress网站,WordPress博客位于子文件夹/blog/中。我们在根目录中启动了一个新的WordPress站点。不幸的是,他们博客文章中的所有图片仍然指向/blog/wp-content/uploads/。我想将所有这些图像添加到/blog/wp-content/uploads文件树上的子文件夹中,这样它就可以自动修复所有这些损坏的图像而无需我的额外工作。

问题是他们的新博客页面位于/blog/。出于搜索引擎优化的原因,我无法改变这一点。如果我移动图像,然后导航到/blog/不显示WordPress页面,它会在文件树上显示一个文件夹。

我想让它显示WordPress页面。有没有办法告诉WordPress忽略该文件夹,并在调用/blog/时显示WordPress页面?

1 个答案:

答案 0 :(得分:0)

WordPress 前端控制器仅在您未在文件系统上请求物理文件或目录时路由请求。这里的问题是,当您创建名为/blog的物理目录时,WP将不再路由请求,您将看到该目录。

除了:你不应该真正看到目录内容,理想情况下你应该得到403 Forbidden。将Options -Indexes添加到.htaccess文件的顶部。

默认WP .htaccess包含以下行,用于排除物理文件和目录的路由(即,以便可以访问静态资源)。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

您可以将/blog子目录设为例外,方法是将其更改为:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d [OR]
RewriteCond %{REQUEST_URI} ^/blog/?$