【问题标题】:How to use mod_rewrite in .htaccess to point to folder outside WordPress installation如何在 .htaccess 中使用 mod_rewrite 指向 WordPress 安装之外的文件夹
【发布时间】:2019-05-13 04:08:59
【问题描述】:

问题

我想编辑 WordPress .htaccess 文件,以便重写对 www.mydomain.com/nonwordpress 的请求以指向 WordPress 安装之外的文件夹。

详情

详细说明:WordPress 安装在共享主机上,并且域配置为指向 WordPress 安装:

www.mydomain.com -> /absolute_path_on_server/htdocs/wordpress

现在我想在“wordpress”文件夹之外有一个不同的目录“nonwordpress”,像这样重定向:

www.mydomain.com/nonwordpress/ -> /absolute_path_on_server/htdocs/nonwordpress

请注意,另一个文件夹位于域指向的根文件夹之外。

我尝试了什么:

我尝试通过添加以下行来修改“wordpress”文件夹中的 .htaccess 文件,以便将请求重写到 mydomain.com/nonwordpress:

RewriteRule ^/nonwordpress/(.*)$   /absolute_path_on_server/htdocs/nonwordpress/$1

整个 .htaccess 文件现在看起来像这样:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^/nonwordpress/(.*)$   /absolute_path_on_server/htdocs/nonwordpress/$1
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

不幸的是,它没有任何效果,所以当我访问 mydomain.com/nonwordpress 时,我得到一个 404 site not found 错误(来自 WordPress)而不是文件夹内容。

我也尝试过用相对路径替换绝对路径来实现重写:

RewriteRule ^/nonwordpress/(.*)$   ../nonwordpress/$1

同样的错误。

任何想法如何做到这一点,如果可以做到的话,将不胜感激!

【问题讨论】:

  • 欢迎来到 StackOverflow。好的答案需要好的问题。看看如何提供minimal, complete, and verifiable example。您可以编辑您的问题,以便更轻松地获得帮助。请不要包含图片,请在问题中包含数据。谢谢。
  • 感谢您的链接,我已尝试遵循指南。

标签: wordpress .htaccess mod-rewrite


【解决方案1】:

为什么这不能按您期望的方式工作,请参阅RewriteRule

重写规则的替换是替换Pattern匹配的原始URL路径的字符串。替换可能是:

文件系统路径
指定要交付给客户端的资源在文件系统上的位置。 仅当在服务器(虚拟主机)上下文中配置规则并且替换中路径的第一个组件存在于文件系统中时,替换才被视为文件系统路径
网址路径
...

因此,当您将其放入 .htaccess 文件时,这将无法正常工作。为了达到预期的效果,你需要把它放在主配置中,包裹在 VirtualHost 指令中。

虽然在您的情况下,使用Alias 会更容易

Alias /nonwordpress/ /absolute_path_on_server/htdocs/nonwordpress/

但同样,这也只允许在

上下文:服务器配置、虚拟主机、目录

【讨论】:

  • 好的,如果我理解正确的话,这不能在共享服务器上完成。太糟糕了。感谢您的帮助!
猜你喜欢
  • 2015-07-19
  • 1970-01-01
  • 2019-06-21
  • 1970-01-01
  • 1970-01-01
  • 2016-06-20
  • 1970-01-01
  • 2017-11-04
  • 1970-01-01
相关资源
最近更新 更多