【发布时间】:2015-01-25 23:47:42
【问题描述】:
我到处搜索,试图找到解决我认为特别常见的问题的方法,但我似乎找不到任何可行的方法。
我正在使用 mod_rewrite 通过我自己的 CMS (index.php) 重定向所有请求。这是htaccess代码:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
(上面的 mod_rewrite 与标准 Wordpress 安装中的代码完全相同,这就是为什么我对如何找不到以下问题的解决方案感到困惑)
我想为我的视频缩略图添加一些图像处理。我编写了一个 php 脚本(video-image.php),效果很好,但我似乎无法找到一种方法来重定向图像 url,同时保持 index.php 重定向完好无损。我正在寻找的代码是这样的:
RewriteRule ^images/video/(.*)/(.*).jpg /images/video/video-image.php?video_image_id=$2&video_image_width=$1 [NC]
但上面的代码似乎与将我的请求发送到 index.php 的 mod_rewrite 冲突。看来我可以将图像重定向到 video-image.php 或将我的页面重定向到 index.php 但必须有办法做到这两点?
我总是觉得 mod_rewrite 令人困惑,如果我解释得不够清楚,我深表歉意。在没有 mod_rewrite 的情况下,所有 php 脚本都能正常运行,所以我确定这不是 php 问题。
如果有人能阐明这个问题或指出我的答案,我将不胜感激!
【问题讨论】:
-
将新规则排序在现有 RewriteCond/RewriteRule 块之上。而且您通常不希望在 everywhere 中使用常见的包罗万象的 RewriteRule。更具体一点,或者使用FallbackResource 而不是那个copypasta。
-
@mario 伙计,我不得不自嘲。三个小时的搜索和尝试,答案是如此简单,完全有道理哈哈。非常感谢您的帮助!
标签: php apache .htaccess mod-rewrite