我正在尝试编写一个htaccess文件,该文件允许/example/1/profile
在/example/
中查找JavaScript文件。当前在Internet Explorer 11上它正在寻找/example/1/file.js
,而实际上它应该在寻找/example/file.js
。
这需要在.htaccess
文件内部完成,作为网站当前具有的设置。
我知道有一种方法可以将404重定向到/example
,但是这样会导致200。
我可以在htaccess文件中说,如果使用.js
.css
来查找/example
是他们的一种方式吗?
预先感谢
编辑:
有关一点但更多的信息,我当前的htaccess就是这样
DirectoryIndex index.php index.html
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*) /example/index.php [NC,L]
这是针对php的,因为php会回显Angular项目file_get_contents
中的index.html
。
所以我需要这个htaccess成为以下逻辑
如果文件是.js
或.css
,则将位置重写为/example
,否则将位置重写为example/index.php
。
发生这种情况的原因是因为我正在执行将ID作为第二个参数的格式,并且由于某种原因,这会干扰js,css的URL结构。
我想这行是什么破了...
RewriteRule ^(.*) /example/index.php [NC,L]
答案 0 :(得分:0)
将我的评论转换为答案。由于相对链接,这似乎是个问题。
要解决此问题,您可以将其添加到页面HTML的<head>
部分的下方:
<base href="/example/" />
,以便从该基本URL而不是从当前页面的URL解析每个相对URL 。