Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript .htaccess是否忽略对css/js/images的请求?_Javascript_Html_Css_.htaccess - Fatal编程技术网

Javascript .htaccess是否忽略对css/js/images的请求?

Javascript .htaccess是否忽略对css/js/images的请求?,javascript,html,css,.htaccess,Javascript,Html,Css,.htaccess,我目前正在运行以下程序: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^([^/]+)/$ $1.html RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.html RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !(\.[a-zA-Z

我目前正在运行以下程序:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/$ $1.html
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.html
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)$ /$1/ [R=301,L]
但是,当一个内部.html文件请求CSS或JS文件时,我会收到一个错误“resource not found”,该文件的URL如下所示:

www.domain.com/the-inner-page/js/script.js
而不是

/js/script.js
我可以在.htaccess文件中添加一些内容来避免此问题吗


谢谢

将其添加到html的
标题
部分。然后,您可以将css文件保留为相对URL

<base href="/" />

重写不是问题所在。要么将对css的引用更新为根相对引用(以a/IE:
href=“/path/to.css”
)开头,要么如前所述使用


我建议使用root-relative,因为它不会阻止您将所有相对URL都写为root-relative,只写需要的URL。

您的html是什么样子的?在css前面添加一个/。如果您按照当前的方式进行操作,它将尝试在您的当前目录中找到它。当您编写以
/
开头的href链接时,这意味着该链接是相对链接,而不是完整链接。您必须使用完整链接或在内部页面中使用
。/
,我建议您不要这样做,因为他可能有一些文件想要与该文件相对。@Jacques没有,因为他重写了,路径发生了变化,他所有的资源现在都将显示为与重写的目录相对。他的资产将得到404分。他现在需要要么使它们成为绝对路径,要么使用前导斜杠,要么使用涵盖所有内容的base标记。如果他有一个与文件名同名的目录,在那里他存储了一个特殊的css或js文件,他只需要为该页面加载,然后他就必须从根目录写入路径,而不是相对于他在文件中的位置写入路径。这包括是否有指向子页面的href,即:
www.domain.com/内部页面/child-page/
。使用base href时,他必须将url写为
/内部页面/子页面
,而不仅仅是
子页面
。这不是他的问题,他说这是从根开始的
/js/script.js
你在编造不存在的场景,而他没有说明这是个问题。因此,对于他目前的问题,这就是解决方案。这是重写中一个非常常见的问题,我已经回答了几十次同样的问题。“你在编造不存在的场景”,不,我是现实主义者。我的意思是只对根相关的东西使用根相关的URL,而不是所有的东西,并且使用网站中非常常见的可能场景。