.htaccess URL内部重写到(全部)-子目录

ie3xauqp  于 2023-02-09  发布在  其他
关注(0)|答案(1)|浏览(151)

我目前有这个:

RewriteEngine On
RewriteBase /
RewriteRule ^(index\.php)?$ /test/ [L]

(index.php似乎是必要的,它是从这里:如何使用.htaccess重写将根URL重定向到子目录?)
系统:MacBook Pro - XAMPP 8.1.2(安装程序不是VM)
我正在尝试重写而不是重定向(不更改地址栏),所有内容都是/test/

这是有效的:

键入:
localhost/
应显示内容
localhost/test/

这不起作用:

所有子目录为localhost/test2/ -> localhost/test/test2/...

hjqgdpho

hjqgdpho1#

好吧,这个作品(据我所知🙈):
1.防止无休止的重定向和获取路径(使用文件(完成
统一资源标识符))

RewriteCond %{REQUEST_URI} !^/subdirectory/

1.将所有内容重写到/subdirectory/ +请求的路径/file

RewriteRule (.*) /subdirectory/%1 [L]

%1从RewriteCond获取的URI。
这是必要的,因为(.*)不会给予我们完整的URI(path + index.html...),它只是路径。
对于nginx也是如此:

if ($uri !~ "^/subdirectory/"){
    rewrite /(.*) /subdirectory$uri last;
}

相关问题