htaccess:服务器响应状态为500

时间:2013-03-07 09:12:15

标签: jquery ajax apache .htaccess codeigniter

在localhost中使用的原始代码:

var form_data = {
                    'email':$('#inviteEmail').val(),
              };

    $.ajax({
            url: "<?php echo site_url('invites/save_email') ?>",
            type: 'POST',
            data: form_data,
            success: function(msg) {
                window.location.href = "<?php echo site_url('invites/moreinvites')?>"
                return true;
            }
    });

它在localhost上工作正常,并且CSRF已关闭。但是当我把它搬到媒体寺庙托管时,我开始得到500 Internal server error

服务器错误日志

  

由于可能,请求超出了10个内部重定向的限制   配置错误。使用'LimitInternalRecursion'来增加   必要时限制。使用“LogLevel debug”获取回溯。

我的htaccess文件有这个

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /thesavv/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>

<IfModule !mod_rewrite.c>
    # If we don't have mod_rewrite installed, all 404's
    # can be sent to index.php, and everything works as normal.
    # Submitted by: ElliotHaughin

    ErrorDocument 404 /index.php
</IfModule>


我不知道这个错误。

1 个答案:

答案 0 :(得分:1)

我使用托管时遇到了同样的错误:在本地运行良好,在生产服务器上显示500错误。

这是一个典型的错误,当从url中删除index.php时,Joomla instalations具有相同的问题,并且问题是由于你的htaccess文件,如果你改变你写的Rewrite规则以避免URL中的index.php,它应该工作。只需删除问号:

RewriteRule ^(.*)$ index.php?/$1 [L] **TO** RewriteRule ^(.*)$ index.php/$1 [L]

可能它会起作用。我想我记得那是因为URI PROTOCOL正在使用CI(你可以在application / config / config.php第33行看到这个),但不完全确定,也许有人可以更好地解释它,:P