2016-08-03 66 views
0

我现在有一个问题。CSS随着线索斜线消失

每当我在我的网址上有一个尾部的斜杠,它会使它没有CSS。

我从另一篇文章中读到一个答案,说你应该使用完整的url路径,而不仅仅是css/style.css,但这并不适用于我。

How it looks with trail

我也用filemtime()我的CSS文件。

echo '<link rel="stylesheet" type="text/css" href="css/style.css?'.filemtime("css/style.css").'">';

因此,如何将我一起去吗?

+0

你是什么意思,斜线? 'CSS/style.css中/'?这会告诉浏览器/服务器寻找名为“style.css”的目录。如果你的意思是'/ css/style.css',那是一个LEADING斜线,而不是尾部。 –

+0

@MarcB如果你看看我提供的链接,你会在发生什么的顶部看到url。我正在使用一个filemtime()函数,正如我在文章中提供的那样。 – Aberidius

回答

0

问题:所有的首先作为@Marc提到的,斜线,当你在浏览器index.php/然后浏览器检查你的CSS文件urlname.com/index.php/css/style.css后加斜杠。

解决方案:

  1. 要么使用完整路径
  2. 使用重写规则删除斜线,以避免这样的问题。

    RewriteEngine On 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)/$ /$1 [L,R=301] 
    
+0

唯一的问题是,当我键入index.php/somethingrandom它使它成为一个目录寻找URL。只有当它是一个普通的index.php /时,重写才起作用 – Aberidius

+0

该规则仅适用于在任何页面没有任何目录后输入的斜线。该解决方案适用于您所问的问题。 – Rohit

0

我有同样的问题,并使用了完整的URL这里面解决了这个问题:

例子:

<link rel="stylesheet" href="http://urlname.com/css/style.css"> 
0

你尝试使用的URL是相对于你的根?

<link rel="stylesheet" href="/css/style.css?'.filemtime("/css/style.css").'">

+0

随着filemtime,它给了我统计失败的错误,当我使用它。 – Aberidius

+0

你是否在'filemtime(“/ css/style.css”)中添加了一个斜杠? – Mila

+0

您也可以尝试预先添加$ _SERVER [“DOCUMENT_ROOT”]。 – Mila