500内部服务器错误?

时间:2009-07-31 02:25:16

标签: php mysql smarty apache

最近,我把我的项目php + smarty + mysql放在我的httpd服务器上。但是我遇到了一个错误:

500 Internal Server Error

我的操作系统是archlinux,httpd服务器和php安装如下:

sudo pacman -S apache php

如果我使用包含以下内容的测试本机php文件:

  <html>
    <head>
    <title>PHP Test Page</title>
    </head>
    <body>
    This is Arch Linux, running PHP.
    <?php
      phpinfo();
    ?>
    </body>
    </html>

它正确运行。它告诉我php可以很好地工作。但为什么我的智能项目不起作用?是否有人遇到过这个问题?

5 个答案:

答案 0 :(得分:6)

根据您提供的信息,很难说。

错误500的发生是因为您在应该生成页面的代码中出现了一些错误,或者代码生成了一些未处理的异常。 我的建议是访问给出500错误的页面,然后尝试注释掉所有代码。看看问题是否仍然存在。如果没有,请取消注释代码,直到找到导致错误的关键部分。可能是任何东西,拼写错误,找不到文件,逻辑错误,任何东西。

另外,如果可以阅读,请检查网络服务器日志。

答案 1 :(得分:2)

查看您的Apache错误日志(通常位于/var/log/httpd/error_log,但这种情况差别很大)。它将提供有关服务器错误的更多信息。

答案 2 :(得分:1)

检查以确保任何.htaccess文件都正确(语法方面)。

答案 3 :(得分:1)

刚好发生在我身上,想写下解决方案。

配置的Smarty缓存目录(/ var / cache / Smarty)配置了不正确的权限,apache进程需要在该目录中创建文件。

这是您使用compile_dir指令设置的目录。

BTW,error_log文件没有显示任何此错误,Firebug显示500内部服务器错误。

答案 4 :(得分:0)

我可以通过检查

中的error.log文件来获取错误详细信息
  

的/ var /日志/ apache2的

在ubuntu 16.04