如何修复RewriteRule递归?

时间:2014-11-21 19:56:12

标签: php apache mod-rewrite activesync

我在Ubuntu 12.04服务器上运行tine(tine20.org),使用Plesk进行配置。在Plesk我有一个子域名(tine.mydomain.com)。在这个子域的网络服务器配置中,我添加了这些行:

RewriteEngine on
RewriteRule /Microsoft-Server-ActiveSync(.*) /index.php?frontend=activesync [E=REMOTE_USER:%{HTTP:Authorization},L,QSA]

我是从Tine wiki复制的:https://www.tine20.org/wiki/index.php/Admins/Synchronisation

当我尝试连接到tine.mydomain.com/Microsoft-Server-ActiveSync时,我收到错误500并在日志中显示这些行:

[Fri Nov 21 19:46:36 2014] [debug] core.c(3112): [client 2.206.3.119] r->uri = /phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/Microsoft-Server-ActiveSync
[Fri Nov 21 19:46:36 2014] [debug] core.c(3118): [client 2.206.3.119] redirected from r->uri = /phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/Microsoft-Server-ActiveSync
[Fri Nov 21 19:46:36 2014] [debug] core.c(3118): [client 2.206.3.119] redirected from r->uri = /phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/Microsoft-Server-ActiveSync
[Fri Nov 21 19:46:36 2014] [debug] core.c(3118): [client 2.206.3.119] redirected from r->uri = /phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/Microsoft-Server-ActiveSync
[Fri Nov 21 19:46:36 2014] [debug] core.c(3118): [client 2.206.3.119] redirected from r->uri = /phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/Microsoft-Server-ActiveSync
[Fri Nov 21 19:46:36 2014] [debug] core.c(3118): [client 2.206.3.119] redirected from r->uri = /phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/Microsoft-Server-ActiveSync
[Fri Nov 21 19:46:36 2014] [debug] core.c(3118): [client 2.206.3.119] redirected from r->uri = /phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/Microsoft-Server-ActiveSync
[Fri Nov 21 19:46:36 2014] [debug] core.c(3118): [client 2.206.3.119] redirected from r->uri = /phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/Microsoft-Server-ActiveSync
[Fri Nov 21 19:46:36 2014] [debug] core.c(3118): [client 2.206.3.119] redirected from r->uri = /phppath/cgi_wrapper/phppath/cgi_wrapper/Microsoft-Server-ActiveSync
[Fri Nov 21 19:46:36 2014] [debug] core.c(3118): [client 2.206.3.119] redirected from r->uri = /phppath/cgi_wrapper/Microsoft-Server-ActiveSync
[Fri Nov 21 19:46:36 2014] [debug] core.c(3118): [client 2.206.3.119] redirected from r->uri = /Microsoft-Server-ActiveSync
[Fri Nov 21 19:46:36 2014] [debug] mod_deflate.c(700): [client 2.206.3.119] Zlib: Compressed 621 to 379 : URL /phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/phppath/cgi_wrapper/Microsoft-Server-ActiveSync 

所以有某种递归,但我不知道为什么以及如何解决它。我该如何解决?

1 个答案:

答案 0 :(得分:0)

尝试将此添加到.htaccess并试一试

RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

您是否重新加载或重新启动了apache?

/etc/init.d/apache reload

如果你必须把它放在你的虚拟主机之间,你应该把它放在你试图访问的目录的.htaccess中。

我希望您正确设置virtualhost / tine.mydomain.com,以便在.httpd conf中设置这些规则。