【问题标题】:Amend .htaccess path rewrite to include subdirectory修改 .htaccess 路径重写以包含子目录
【发布时间】:2017-08-25 11:49:50
【问题描述】:

我目前在我的网站上设置了以下 .htaccess 重写规则:

RewriteEngine On
RewriteRule ^([^/d]+)/?$ index.html?id=$1 [QSA]

该规则的工作方式是,如果我转到以下 URL:

http://example.com/dashboard

它不会尝试查找不存在的仪表板目录,而是会保持 URL 不变并将用户重定向到根索引页面。从那里我只是使用 javascript 来控制用户将看到的视图,具体取决于附加的路径。

代码完全按照我的意愿工作,但我现在不得不将我的网站移动到我们服务器上的一个子目录中。 URL 结构现在是这样的:

http://example.com/mysubdir/dashboard

我尝试重写我的重写规则以合并目录,但由于我不是 .htaccess 专家,所以没有成功。我尝试了类似的东西:

RewriteEngine On
RewriteRule ^([^/d]+)/mysubdir/?$ index.html?id=$1 [QSA]

谁能告诉我如何修改我的重写规则以在我的子目录中工作?

【问题讨论】:

  • 您是否将 .htaccess 文件移动到文件夹中,还是仍位于其原始位置?如果是后者,那么当然也要参考文件夹内的 index.html 文件。

标签: .htaccess mod-rewrite


【解决方案1】:

你很接近 - 这应该这样做:

RewriteEngine On
RewriteRule ^mysubdir/([^/d]+)/?$ /mysubdir/index.html?id=$1 [QSA]

在这里演示:http://htaccess.mwl.be?share=6e574cc6-90a4-54ca-b113-ce72d6eb5203

【讨论】:

    猜你喜欢
    • 2014-04-16
    • 1970-01-01
    • 1970-01-01
    • 2012-10-14
    • 2014-03-06
    • 2011-08-18
    • 2015-12-06
    • 2014-05-18
    相关资源
    最近更新 更多