codeigniter localhost内部服务器错误500

时间:2013-11-20 05:16:00

标签: php .htaccess codeigniter wamp

我在codeigniter中开始一个新项目。在localhost中设置工作文件夹时,我将以下htaccess文件放在我的项目根文件夹中,以便从URL中删除index.php

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php?/$1 

现在我收到如下错误消息

“内部服务器错误

服务器遇到内部错误或配置错误,无法完成您的请求。“

我的项目路径是localhost / sc

config.php文件中的

我把以下一行

 $config['base_url']='http://localhost/sc';

服务器错误消息是“无效命令'RewriteEngine',可能拼写错误或由服务器配置中未包含的模块定义”

我在Windows平台上使用wamp服务器 请帮我解决这个问题

谢谢

6 个答案:

答案 0 :(得分:7)

这个.htaccess脚本非常适合我。将其放在项目目录中的第一组文件夹中。与index.php文件相同的级别

RewriteEngine on
RewriteCond $1 !^(index\.php|public|\.txt) 
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1

可以使用以下路径/var/log/apache2/error.log

在apache error.log文件中检查错误500

检查列出的最后一个错误并进行修复。

答案 1 :(得分:4)

请参阅此问题:.htaccess: Invalid command 'RewriteEngine', perhaps misspelled or defined by a module not included in the server configuration

基本上,你需要打开mod_rewrite。这就是您收到" Invalid command 'RewriteEngine'错误消息的原因。

此外,由于您的项目路径位于/sc/,因此您需要将基数设置为/sc/

RewriteEngine On
RewriteBase /sc/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php?/$1 

将htaccess文件放在/sc/文件夹中。

答案 2 :(得分:3)

在WAMP中激活rewrite_module。它默认禁用

答案 3 :(得分:2)

  

一年前我遇到过同样的问题。

  1. 首先,确保启用了mod_rewrite模块 你的apache服务器。不要浪费时间进行其他解决方案。
  2. 其次,这可能是因为htaccess规则。请使用这个 htaccess的基本代码行。
  3. Options +FollowSymlinks 
    RewriteEngine On 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ index.php?/$1 [QSA,L]

答案 4 :(得分:0)

在CodeIgniter中,如果要调用的模型试图从不存在的表中获取值,则可能会遇到500内部服务器错误。

答案 5 :(得分:0)

在wampserver中激活Rewrite_module 像Apache一样 - > Apache模块 - > Rewrite_module [只需选择] 要不然 请参阅" Apache错误日志"在wampserver的Apache菜单下了解更多关于错误的信息