Php .htaccess的重定向错误?
我制作了一个URL缩短器,缩短的链接如下所示: . 我的PHP代码检查这个06uoM是否在我的数据库中-如果是,它将重定向到正确的页面,如果不是,它将从Php .htaccess的重定向错误?,php,.htaccess,redirect,Php,.htaccess,Redirect,我制作了一个URL缩短器,缩短的链接如下所示: . 我的PHP代码检查这个06uoM是否在我的数据库中-如果是,它将重定向到正确的页面,如果不是,它将从index\u html目录打开index.PHP文件。这很糟糕,因为当我将URL写入上传到服务器上的图像时,它会打开index.php,因为URL不在数据库中 -看到了吗 这就是.htaccess的外观: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %
index\u html
目录打开index.PHP
文件。这很糟糕,因为当我将URL写入上传到服务器上的图像时,它会打开index.php
,因为URL不在数据库中
-看到了吗
这就是.htaccess
的外观:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?url=$1
请帮我解决这个问题 听起来你想让404错误发生在URL上,比如 http://patison.eu/forum/images/off.gif 但不是在像这样的URL上 http://patison.eu/06uoM 如果是这种情况,您可以将
.htaccess
代码更改为此,以限制重写的URL类型:
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
但是图像目录中不存在
off.gif
,这就是请求被转发到index.php
的原因。这是因为文件存在:所有目录中有多少个.htaccess??只有这一个?当进入buddies.gif时,它会再次发送到index.php。。。也许你忘了添加.giff而不是png?你做了什么更改吗?现在url转到youtube。你解决了吗?