我想在脚本网址中隐藏子文件夹名称:
<link rel="stylesheet" type="text/css" href="/abc/cde/css/bootstrap.min.css" />
我想改变href =&#34; /abc/cde/css/bootstrap.min.css"
要
HREF =&#34; /css/bootstrap.min.css"
说明:
我正在使用共享主机。 我的网站位于文件夹abc / cde /
中我在根文件夹(/)
中使用以下.htaccessOptions -Indexes
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?myhost.com$
RewriteCond %{REQUEST_URI} !^/abc/cde/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /abc/cde/$1
RewriteCond %{HTTP_HOST} ^(www.)?myhost.com$
RewriteRule ^(/)?$ abc/cde/index.php [L]
Everthing似乎没问题。我可以直接访问www.myhost.com。
但是
当我使用(查看源代码)时,子文件夹在那里可见
<link rel="stylesheet" type="text/css" href="/abc/cde/css/bootstrap.min.css" />
我也希望隐藏此路径。
仅供参考:我使用的是Cakephp
答案 0 :(得分:1)
重写规则无法更改您的HTML源代码。您需要更改脚本代码,如下所示:
<link rel="stylesheet" type="text/css" href="/css/bootstrap.min.css" />
然后遵守以下规则:
Options -Indexes
RewriteEngine on
# to route css and js
RewriteRule ^(css|js)/ /abc/cde%{REQUEST_URI} [L,NC]
RewriteCond %{HTTP_HOST} ^(www\.)?myhost\.com$
RewriteCond %{REQUEST_URI} !^/abc/cde/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /abc/cde/$1 [L]
RewriteCond %{HTTP_HOST} ^(www\.)?myhost\.com$
RewriteRule ^/?$ abc/cde/index.php [L]