服务器以永远不会完成的方式重定向该地址的请求,但是使用WAMP成功

时间:2012-11-01 11:25:35

标签: php .htaccess web-applications

当我尝试打开登录页面时,它显示错误,例如“”服务器以永远无法完成的方式重定向此地址的请求“......我认为问题可能出在.htaccess

以下是.htaccess:

启用网址重写

RewriteEngine On
Installation directory
RewriteBase

// Allow any files or directories that exist to be displayed directly


RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d

// Rewrite all other URLs to index.php/URL


RewriteRule .*/ index.php/$0 [PT,L] "

在编码中没有那种声音..可以任何人帮助我..我已经使用wamp服务器在我的系统上成功测试了这个项目..但是当我在webserver上尝试获取重定向循环错误!! 。一个献血者数据库的开源项目请帮帮我吗?我正在给所有相关文件下载的链接...请下载并查看它有什么问题...提前谢谢...... / p>

link:http://www.uploadmb.com/dw.php?id=1351767344

2 个答案:

答案 0 :(得分:0)

问题是通过添加/然后追加到index.php,你正在寻找一个文件夹“index.php”,下面是文件/文件夹结构。那将不存在。因此,您需要将URL附加为参数:这应该可以解决问题:

RewriteEngine On

# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d

# Rewrite all other URLs to index.php/URL
RewriteRule ^(.*) index.php?$0 [L]   # Use [NE,L] to stop the URL being escaped.

但是......您也可以使用PHP中的原始请求URL,这使得htaccess更加简单易懂,而且您赢了;最终在URL中使用了狡猾的字符(可以使用上述内容)< / p>

RewriteEngine On

# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d

# Rewrite all other URLs to index.php/URL
RewriteRule .* index.php [L] 

然后,在PHP中,

$originalURL = $_SERVER['REQUEST_URI'];

这样处理起来更简单,处理特殊字符更“正确”。

答案 1 :(得分:0)

此错误有多种原因。 Chrome提供了更有意义的错误消息。

重定向规则可能存在的问题:

  • 清除所有Cookie。如果cookie已损坏,或者重定向信息存储在cookie中,则可能会导致问题。
  • 是否有多个重定向规则?
  • 检查重定向的htaccess规则
  • 您是否安装了多个重定向插件?
  • 确保每个网址只有一个重定向规则。使用相对网址来涵盖http和https协议。