使用.htaccess重定向错误?

时间:2015-05-16 07:29:13

标签: php .htaccess redirect

我制作了网址缩短,缩短的链接如下所示: http://patison.eu/06uoM 的。我的PHP代码检查这个 06uoM 是否在我的数据库中 - 如果是,它将重定向到正确的页面,如果不是,它将从index.php目录打开index_html文件。这很糟糕,因为当我向服务器上传的图片写入URL时,它会打开index.php,因为URL不在数据库中......

http://patison.eu/forum/images/off.gif - 请参阅?

这就是.htaccess的样子:

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f  

RewriteCond %{REQUEST_FILENAME} !-d  

RewriteRule ^(.+)$ index.php?url=$1

请帮我解决这个问题!

1 个答案:

答案 0 :(得分:0)

听起来你想在像

这样的网址上发生404错误
  

http://patison.eu/forum/images/off.gif

但不适用于

等网址
  

http://patison.eu/06uoM

如果是这种情况,您可以将.htaccess代码更改为此,以限制重写的网址类型:

RewriteEngine on

# Limit rewrites to urls like '/06uoM' or '/06uoM/', but not like '/forum/images/off.gif'
RewriteCond %{REQUEST_URI} ^/[0-9a-z]{5}/?$ [NC]

RewriteCond %{REQUEST_FILENAME} !-f  
RewriteCond %{REQUEST_FILENAME} !-d  
RewriteRule ^(.+)$ index.php?url=$1