Php URL重写后缺少CSS文件和图像
我正在尝试使用模式重写来创建用户友好的URL。 我的问题是,在给我的URL添加了“name”这样的类别之后,当我使用新的URL调用页面时,它无法加载CSS文件或图像 我有这样一个链接: localhost/mywebsite/project?id=22 新链接类似于 localhost/mywebsite/project/22/myproject.project 访问代码:Php URL重写后缺少CSS文件和图像,php,css,url,mod-rewrite,url-rewriting,Php,Css,Url,Mod Rewrite,Url Rewriting,我正在尝试使用模式重写来创建用户友好的URL。 我的问题是,在给我的URL添加了“name”这样的类别之后,当我使用新的URL调用页面时,它无法加载CSS文件或图像 我有这样一个链接: localhost/mywebsite/project?id=22 新链接类似于 localhost/mywebsite/project/22/myproject.project 访问代码: RewriteRule ^project/([0-9]*)/.*\.project$ /project.php?proje
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”
这似乎需要大量工作将图像插入到与css href链接具有相同相对路径的同一文件中,在浏览器中加载页面,在internet explorer中右键单击图像,单击“属性”,您应该可以看到相对路径实际指向的位置。对于您的本地版本,请添加
<base href="//localhost/mywebsite" />
到头部
对于您的实时版本,将其更改为
<base href="//your.domain.here" />
参考您必须在connection.php中定义基本路径或服务器视图路径,并且无论何时需要该路径,都要将其设置为全局路径。然后调用该变量,css或图像将占据整个路径 比如说 $SVP=”http://www.example.com/" 全球$SVP; echo$SVP
所以是的,但也有图片,我不能在去之后更改每一张图片的域名live@max,
base
标记也适用于图像。。例如,谢谢,这解决了我的头疼问题。显然,我应该在链接中包含我的网站,因为localhost被认为是我的根目录,/mywebsite/folder只是另一个目录,所以应该包含在链接中。我不能改变所有的链接,当我要生活!您无法更改所有链接,因此请保持所有路径的相对位置,但请使用正确的相对位置调整每个路径。注意:我的意思不是使用绝对路径,我的意思是检查绝对路径并调整相对路径,直到正确为止。您可以使用../进入文件夹。