.htaccess屏蔽目录,带斜线或不带斜线

时间:2018-08-20 16:16:33

标签: .htaccess directory masking

我正在尝试用一些静态html内容屏蔽目录,简单的示例如下所示: RewriteRule ^something/?$ sub_directory/something/

现在,当用户关注

www.example.com/something/

一切正常,静态页面从sub_directory/something加载CSS和图像。但是,当用户遵循如下网址:www.example.com/something(不带斜杠)时,应用程序将返回404错误。

我在这里做错了什么?

我尝试过:

RewriteRule ^something(.*) sub_directory/something/$1

但是通过这种方式,只加载html内容,而没有任何js,css或图像文件。

1 个答案:

答案 0 :(得分:1)

您的规则如下:

RewriteEngine On

RewriteRule ^(?:js|css|images)/.+$ sub_directory/something/$0 [L,NC]

RewriteRule ^something(?:/.*)?$ sub_directory/$0 [L,NC]

并将其添加到页面HTML的<head>部分的下方:

<base href="/sub_directory/something/" />

,以便从该基本URL而不是从当前页面的URL解析每个相对URL