htaccess 更改后 css 停止作为样式表工作
After htaccess changes the css stop working as stylesheet
我的 css 文件有一个奇怪的问题。
在我将 htaccess 文件更改为此
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{THE_REQUEST} /eventDetails\.php\?id=([0-9]+)&name=(.+)\sHTTP [NC]
RewriteRule ^ /%1/%2? [L,R]
RewriteRule ^([^/]+)/([^/]+)/?$ /eventDetails.php?id=&name= [L]
</IfModule>
我的 css 文件停止加载到网站的所有页面。
我的 public_html 文件夹包含
- index.php
- profile.php
- css -> style.css
- js -> owl.carousel.js
- .htaccess
使用 Google Chrome 开发者工具时,css 文件出现此错误
Resource interpreted as Stylesheet but transferred with MIME type text/html: "http://something.gr/css/style.css".
javascript 个文件出现此错误
owl.carousel.js:1 Uncaught SyntaxError: Unexpected token <
Network
选项卡中的一些图片
没有 .htaccess 文件
如您所见,Content-Type 是 text/css .. 应该是
使用 .htaccess 文件
正如您在这里看到的 mime.type returns 它作为 text/html
我试过的。
首先。在 <title>
html 标签之后我进入了
<base href="/">
其次。我试图将 .htaccess 文件更改为此
<IfModule mod_rewrite.c>
RewriteEngine on
AddType application/javascript js
AddType text/css css
RewriteCond %{THE_REQUEST} /eventDetails\.php\?id=([0-9]+)&name=(.+)\sHTTP [NC]
RewriteRule ^ /%1/%2? [L,R]
RewriteRule ^([^/]+)/([^/]+)/?$ /eventDetails.php?id=&name= [L]
</IfModule>
最后我检查了我的专用服务器 usr/local/apache/conf/
在 mime.types 文件中 text/css css
的注释与
application/javascript js
我不知道我还应该做什么。
你的第二条规则
RewriteRule ^([^/]+)/([^/]+)/?$ /eventDetails.php?id=&name= [L]
将 /css/style.css
重写为 /eventDetails.php?id=css&name=style.css
。
如果您想从该规则中排除现有文件,您可以在其前面加上
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
您也可以将第一条规则更改为
RewriteCond %{QUERY_STRING} id=([0-9]+)&name=(.+)
RewriteRule ^eventDetails\.php$ /%1/%2? [L,R]
为了防止重定向循环,我们在开头插入
RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule ^ - [L]
你当然不需要这个,如果你保持现有的条件和规则反对 THE_REQUEST
。
所以完整的规则变成
RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule ^ - [L]
RewriteCond %{QUERY_STRING} id=([0-9]+)&name=(.+)
RewriteRule ^eventDetails\.php$ /%1/%2? [L,R]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)/?$ /eventDetails.php?id=&name= [L]
我的 css 文件有一个奇怪的问题。 在我将 htaccess 文件更改为此
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{THE_REQUEST} /eventDetails\.php\?id=([0-9]+)&name=(.+)\sHTTP [NC]
RewriteRule ^ /%1/%2? [L,R]
RewriteRule ^([^/]+)/([^/]+)/?$ /eventDetails.php?id=&name= [L]
</IfModule>
我的 css 文件停止加载到网站的所有页面。
我的 public_html 文件夹包含
- index.php
- profile.php
- css -> style.css
- js -> owl.carousel.js
- .htaccess
使用 Google Chrome 开发者工具时,css 文件出现此错误
Resource interpreted as Stylesheet but transferred with MIME type text/html: "http://something.gr/css/style.css".
javascript 个文件出现此错误
owl.carousel.js:1 Uncaught SyntaxError: Unexpected token <
Network
选项卡中的一些图片
没有 .htaccess 文件
如您所见,Content-Type 是 text/css .. 应该是
使用 .htaccess 文件
正如您在这里看到的 mime.type returns 它作为 text/html
我试过的。
首先。在 <title>
html 标签之后我进入了
<base href="/">
其次。我试图将 .htaccess 文件更改为此
<IfModule mod_rewrite.c>
RewriteEngine on
AddType application/javascript js
AddType text/css css
RewriteCond %{THE_REQUEST} /eventDetails\.php\?id=([0-9]+)&name=(.+)\sHTTP [NC]
RewriteRule ^ /%1/%2? [L,R]
RewriteRule ^([^/]+)/([^/]+)/?$ /eventDetails.php?id=&name= [L]
</IfModule>
最后我检查了我的专用服务器 usr/local/apache/conf/
在 mime.types 文件中 text/css css
的注释与
application/javascript js
我不知道我还应该做什么。
你的第二条规则
RewriteRule ^([^/]+)/([^/]+)/?$ /eventDetails.php?id=&name= [L]
将 /css/style.css
重写为 /eventDetails.php?id=css&name=style.css
。
如果您想从该规则中排除现有文件,您可以在其前面加上
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
您也可以将第一条规则更改为
RewriteCond %{QUERY_STRING} id=([0-9]+)&name=(.+)
RewriteRule ^eventDetails\.php$ /%1/%2? [L,R]
为了防止重定向循环,我们在开头插入
RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule ^ - [L]
你当然不需要这个,如果你保持现有的条件和规则反对 THE_REQUEST
。
所以完整的规则变成
RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule ^ - [L]
RewriteCond %{QUERY_STRING} id=([0-9]+)&name=(.+)
RewriteRule ^eventDetails\.php$ /%1/%2? [L,R]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)/?$ /eventDetails.php?id=&name= [L]