【发布时间】:2012-10-11 02:36:19
【问题描述】:
我有一个小问题。 我有一个图像的颜色自定义代码,我使用 RewriteRule 使其更短:
RewriteRule ^cc-(.*?)-(.*?)\.png$ cc.php?col1=$1&col2=$2 [L]
当我输入 localhost/Gen/cc-1122ff-ffffff.png 时,它会正常为我打开。 但是,当我想用 PHP 向这个生成的图片添加文本时,我使用另一个 RewriteRule:
RewriteRule ^sig,(.*?),(.*?),(.*?),(.*?),([^,]+),(.*?),([^,]+)\.png$ test.php?nam=$6&font=$5.ttf&bg=$7.png&gn=$1&badg=$2&typ=$3&itm=$4 [L]
然后我转到这个链接:localhost/Gen/sig,y,y,mem,no,Pixel,test,cc-1122ff-ffffff.png 我收到此错误:
Warning: imagecreatefrompng(cc-1122ff-ffffff.png): failed to open stream: No such file or directory in D:\Xampp\htdocs\Gen\test.php on line 31
第二个 RewriteRule 正常工作,例如 localhost/Gen/sig,y,y,mem,no,Pixel,test,white.png 第二个 RewriteRule 不适用于第一个 RewriteRule。为什么?
【问题讨论】:
-
好吧,首先,第一个以
[L]结尾,将其标识为“最后一个”规则(如果匹配,则不运行其他规则)。在任何情况下,您都应该发布整个相关配置(或 .htaccess)以帮助查明错误。
标签: php html .htaccess mod-rewrite