【问题标题】:url rewrite messes up phpurl重写搞砸了php
【发布时间】:2014-04-28 10:13:46
【问题描述】:

我在我的网站上为日历重写了这个 url。这是代码:

RewriteRule ^calendar/([0-9]{4})/([0-9]{2})$ /calendar/?year=$1&month=$1

这样我就可以改用 domain.com/calendar/yyyy/mm 了。问题是它弄乱了页面上的所有图像、css、php 等文件。我将此添加到头部并修复了 CSS 和图像:

<base href="http://www.domain.com/">

但是日历还是坏了。我试过这个,我认为这是另一个类似问题的答案,但它没有做任何事情。任何想法如何解决这个问题?

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/]+)/([^/]+) calendar/?year=$1&month=$1 [NC]

【问题讨论】:

    标签: php .htaccess dynamic url-rewriting


    【解决方案1】:

    问题是您在 css/js/images 中使用了相对链接

    您需要确保在您的 css、js、图像文件中使用绝对路径而不是相对路径。这意味着您必须确保这些文件的路径以 http:// 或斜杠 / 开头。

    【讨论】:

    • 问题出在日历上。上/下个月按钮不起作用。这些事件不在日历上。即使我更改了网址中的月份,它也会转到错误的月份,即使我去 domain.com/2014/XX
    猜你喜欢
    • 1970-01-01
    • 2011-10-11
    • 2011-08-17
    • 1970-01-01
    • 1970-01-01
    • 2013-10-28
    • 1970-01-01
    • 2012-06-08
    • 1970-01-01
    相关资源
    最近更新 更多