【问题标题】:Any good solutions for a .htaccess redirect to a subfolder without changing the url?在不更改 url 的情况下将 .htaccess 重定向到子文件夹的任何好的解决方案?
【发布时间】:2013-03-22 09:46:56
【问题描述】:

我正在尝试使用 .htaccess 从根目录重定向到子文件夹,我得到 500 或重定向循环。

我正在开发一个 HMVC 框架,我需要能够将站点的部分(文件夹)分解为它们自己的代码岛。 有些女巫会使用框架有些会使用开源软件(OpenCart,Wordpress..)

文件夹结构(根):

 /index
 /shop
 /blog
 .htaccess

访问根目录时,我需要将其从 .htaccess 文件重定向到 /index(或任何其他子文件夹)而不更改 url。

这些文件夹有自己的 .htaccess 文件。

从根目录重定向需要在子文件夹内运行.htaccess(大多数框架需要mod_rewrite)

这...

  RewriteRule ^(.*)$ http:\/\/radu\.koding\.com\/$1 [L,NC]
  RewriteRule ^$ index [L]
  RewriteRule ^(.*)$ index/$1 [L]

似乎不起作用。我陷入了重定向循环。

有什么想法吗?

【问题讨论】:

    标签: php .htaccess redirect rewrite


    【解决方案1】:

    试试这个:

    RewriteCond $1 !^index/
    RewriteRule ^(.*)$ index/$1 [L]
    

    此 RewriteCond 将 RewriteRule 匹配的内容与不以 index/ 开头的内容进行比较。

    (我在这里跳过了原始示例中的第二个 RewriteRule - 将“nothing”重定向到 index/ 应该可以正常工作。)

    【讨论】:

    • 谢谢,但我仍然得到 500。
    • 所有这些麻烦都是因为我不想复制代码。通过将根 .htaccess 路由到指向 /index 文件夹中框架的 index.php 文件(仍在根中),可以避免我的困境。也许这是我必须接受的妥协。
    猜你喜欢
    • 1970-01-01
    • 2015-12-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-07
    • 1970-01-01
    • 2013-09-10
    • 2012-05-22
    • 1970-01-01
    相关资源
    最近更新 更多