max*_*max 12 css php url mod-rewrite url-rewriting
我正在尝试使用模式重写来创建用户友好的URL.我的问题是,在给我的URL提供"名称"等类别后,当我使用新URL调用页面时,它无法加载CSS文件或图像.
我有一个像这样的链接:
本地主机/ mywebsite /项目?ID = 22
新链接就像
本地主机/ mywebsite /项目/ 22/myproject.project
htaccess代码:
RewriteRule ^project/([0-9]*)/.*\.project$ /project.php?project=$1 [L]
Run Code Online (Sandbox Code Playgroud)
(它可能不是100%正确,但我现在无法访问我的代码所以我只是写了这个,它在原始源上工作正常)
我的根目录是localhost/mywebsite/
我的CSS文件在css/style.css中
本地主机/ mywebsite/CSS/style.css中
我的htaccess
本地主机/ mywebsite/htaccess的
我的project.php文件在
本地主机/ mywebsite/project.php
所以在项目页面中我可以使用相对路径访问CSS文件,
<link href="css/style.css" rel="stylesheet" type="text/css" />
Run Code Online (Sandbox Code Playgroud)
但是当我使用重写的URL页面时找不到CSS文件.
我不能使用域名的绝对路径,因为我还没有域名!它可以是任何东西.
一种方法是使用类似问题localhost/mywebsite/project.php建议使用域的相对路径,当我运行我的脚本localy时,我的根目录是localhost所以css链接应该看起来像
HREF = "mywebsite/CSS/style.css中"
但是当我上线时,我应该将所有链接更改为类似的内容
HREF = "/ CSS/style.css中"
这似乎很多工作
Gab*_*oli 27
为您的本地版本添加
<base href="//localhost/mywebsite" />
Run Code Online (Sandbox Code Playgroud)
到头部
并为您的实时版本更改为
<base href="//your.domain.here" />
Run Code Online (Sandbox Code Playgroud)
请参阅http://www.w3.org/TR/html4/struct/links.html#h-12.4