将PNG URL重写为PHP文件

时间:2014-08-06 08:43:08

标签: php .htaccess mod-rewrite

请原谅我,但我对PHP非常陌生,更糟糕的是网址重写。

我想写一个PHP脚本,它会动态输出一个图像,然后在我所属的论坛上用作签名。

我有一个我正在使用的基本PHP文件,并且将进行编辑,因此我可以为此论坛的其他用户托管它。

信息将存储在数据库中,我想用PNG URL调用PHP脚本

示例:

http://somedomain.com/somecode.png

将其重写为

http://somedomain.com/sig_img.php?img=somecode 

其中somecode是数据库表主索引。

我还不需要PHP脚本的帮助,但我不知道从哪里开始使用.htaccess mod_rewrite代码。

谢谢大家的帮助!

1 个答案:

答案 0 :(得分:1)

假设启用了mod_rewrite,这样的东西应该可以工作:

<Location />
    RewriteEngine On
    # ensure requested resource is not a file.
    RewriteCond %{SCRIPT_FILENAME} !-f
    # ensure requested resource is not a directory.
    RewriteCond %{SCRIPT_FILENAME} !-d
    RewriteRule ^(.*\.png)$ sig_img.php?img=$1 [NC,L]
</Location>

这会将任何不是文件或目录的请求重定向到脚本sig_img.php,并将请求的文件名作为参数。您可能希望将此限制为仅限.PNG文件请求,在这种情况下请read about the options

确保将请求视为不受信任并将输入参数化;不要只将$_GET['img']连接到查询字符串中。