2012-10-23 71 views
0

我已经将我的项目从Windows IIS迁移到Mint Apache2。 不幸的是我得到了一个错误:codeigniter项目从iis迁移到apache2

HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfil the request. 

我已经改变了对文件的权限为755。通常情况下,如果有一个CI错误(连接到数据库等),它抛出一个错误。

我用VI打开了我的index.php,并且在每个文件的每行末尾注意到了^ M。这虽然不在Aptana中显示。 Strange endings on the end of each line

我花了半年时间写了这个程序,我对此并不兴奋。 有没有人有这方面的经验?

谢谢。

+1

^M只是真的是EOL,它在编程时会变得烦人。但是,您需要从error_log中提供更多详细信息,以便我们为您提供进一步的帮助。 –

+1

你可以用'\ r'来代替'^ M' – dm03514

+0

这个有意义吧!我检查了CI错误文件夹的权限,它只给我DEBUG消息。没有像这样的错误。 另外我检查了/var/log/apache2/error.log下的日志文件。这里什么也没有。 (除了缺失的favicon文件 - 但我不认为这是问题)任何建议在哪里寻找更多的信息? 谢谢! – Puzzler

回答

2

如果您可以访问您的服务器上的外壳,它的运行Linux/Unix的,试试这个:

for i in `find . -type f` ; do dos2unix $i $i; done 

for i in `find . -type f` ;部分找到当前目录中的所有文件。

然后,do dos2unix $i $i; done运行dos2unix将所有^M的转换Unix的标准,它只是\r

如果你想测试它在一个单一的文件,使文件的副本,并与find filename.ext

+0

谢谢你使用这个脚本。我运行它,它确实修改了文件,这很方便,尽管这仍然不能修复网站 – Puzzler

+0

然后,您需要提供错误日志,因为错误500几乎可以是任何东西。 – Brendan

+0

正确 - 我创建了一个新的ci项目 - 这工作正常。所以我已经开始手动copping file after file,在从我的应用程序设置到裸机CI项目之后进行设置。答案很简单。我的PHP没有安装mysql的扩展。我已更新php.ini文件,但可能apache无法访问它。明天我会把它整理好。我很惊讶,在日志中根本没有错误:|谢谢你的时间。 – Puzzler

0

尝试添加该到php.ini更换find .

display_errors = On 

这应该显示的只是抛出一个500从内应该是比较简单的调试正确的错误信息。