0

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

下面是.htaccess:

开启 URL 重写

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 服务器在我的系统上成功测试了这个项目..但是当我在网络服务器上尝试它时出现重定向循环错误!!......它是献血者数据库的开源项目请帮助我吗?..我提供了所有相关文件的下载链接...请下载并检查它有什么问题..提前谢谢....

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

4

2 回答 2

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 中出现不可靠的字符(以上内容可能)

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'];

这更容易处理,并且对于处理特殊字符更“正确”。

于 2012-11-02T00:04:09.023 回答
0

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

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

  • 清除所有 cookie。如果 cookie 损坏,或者重定向信息存储在 cookie 中,这可能会导致问题。
  • 是否有多个重定向规则?
  • 检查您的 htaccess 重定向规则
  • 您是否安装了多个重定向插件?
  • 确保每个 url 只有 1 个重定向规则。使用相对 url 覆盖 http 和 https 协议。
于 2015-03-31T22:09:34.823 回答