PHP-使用htaccess清理URL会破坏我的CSS
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP-使用htaccess清理URL会破坏我的CSS,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1400字,纯文字阅读大概需要3分钟。
内容图文
我正在尝试清理URL路径,以便在所有链接中都没有任何GET参数和PHP扩展名.作为我要实现的目标的一个示例:
http://localhost/projectname/?page=dashboard
需要是:
http://localhost/projectname/dashboard/
它确实有效,我在.htaccess中使用了以下代码:
RewriteEngine on
RewriteCond %{REQUEST_URI} dashboard/
RewriteRule dashboard/ http://localhost/projectname/?page=dashboard
但是,页面显示时没有任何CSS或Javascript.我试图导航到Style.css只是为了发现它看起来与网页本身完全相同,而不是向我展示我的CSS规则.
那我在做什么错?请不要将我的问题标记为重复,我一直在研究类似的问题,但无法解决问题.
解决方法:
当您的URL从/ projectname /更改为/ projectname / dashboard /时,您正在更改相对URI.
发生这种情况时,页面上的每个相对链接都将添加错误的库.当浏览器看到的唯一位置是/ projectname / dashboard /时,它就不知道其基础实际上是/ projectname /.
现在,当您的css链接为:
<link rel="stylesheet" href="Content/style.css">
浏览器尝试通过从该位置添加基础来解决该问题,并加载:
https://localhost/projectname/dashboard/Content/style.css
由于“仪表盘”实际上不是文件夹,因此不存在.
您可以通过在页面标题中添加基本内容来为基本页面添加基本内容:
<base href="/projectname/" />
或者,您可以尝试通过添加此规则来取消重写仪表板,使其不属于请求(更棘手,更容易出错)
RewriteCond %{REQUEST_URI} ^/projectname/dashboard/(.*\.css)$
RewriteCond %{DOCUMENT_ROOT}/projectname/%1 -f
RewriteCond ^projectname/dashboard/(.*\.css)$/projectname/$1 [L]
请注意,这是否会对浏览器的缓存产生意外影响.
内容总结
以上是互联网集市为您收集整理的PHP-使用htaccess清理URL会破坏我的CSS全部内容,希望文章能够帮你解决PHP-使用htaccess清理URL会破坏我的CSS所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。