URL重写后缺少CSS文件和图像


Missing CSS file and images after URL rewrite

我试图使用户友好的URL使用模式重写。我的问题是,在给我的URL提供"名称"等类别后,当我使用新URL调用页面时,它无法加载CSS文件或图像。

我有一个链接:

localhost/mywebsite/项目?id = 22

新链接类似于

localhost/mywebsite/项目/22/myproject.project

htaccess代码:

RewriteRule ^project/([0-9]*)/.*'.project$ /project.php?project=$1 [L]

(它可能不是100%正确,但我现在无法访问我的代码,所以我只是写了这个,它在原始源代码上运行良好)

我的根目录是localhost/mywebsite/

我的CSS文件在CSS/style.css

localhost/mywebsite/css/style.css

我htaccess

localhost/mywebsite/. htaccess

和我的project.php文件在

localhost/mywebsite project.php

在项目页面中,我可以通过使用相对路径

访问CSS文件
<link href="css/style.css" rel="stylesheet" type="text/css" />

但是当我使用重写的URL页面时找不到CSS文件。

我不能使用绝对路径与域名,因为我还没有域名!它可以是任何东西

一种方法是使用类似问题中建议的相对路径到域localhost/mywebsite/project.php当我在本地运行脚本时,根目录是本地主机所以CSS链接应该像

href = " mywebsite/css/style.css"

但是上线后我应该把所有的链接改成

href = "/css/style.css"

这似乎有很多工作

对于本地版本添加

<base href="//localhost/mywebsite" />

到头部部分

,对于您的实时版本,将其更改为

<base href="//your.domain.here" />

参考http://www.w3.org/TR/html4/struct/links.html#h-12.4

你必须在connection.php中定义基本路径或服务器视图路径当你想要那个路径时,把它设为全局。然后,这个变量将被调用,CSS或图像将占用整个路径。

例如

高级副总裁美元= " http://www.example.com/"

全球高级副总裁美元;echo $高级;

将图像插入到与css href链接具有相同相对路径的同一文件中,在浏览器中加载该页面,在ie中右键单击图像,单击属性,您应该可以看到相对路径实际指向的位置。