某些目录中的 PHP 文件会导致 HTTP 500 错误


PHP files in certain dir result in HTTP 500 error

我面临着一个奇怪的情况。对于一个网站,正在执行一些 cronjob。到目前为止,这一切都运作良好;当我试图执行一个 cronjob 时,我没有得到任何结果。出于某种原因,.htaccess 试图将其放入具有错误 $_GET 参数的网站中,从而识别出该 URL。第二个参数是 500。当我尝试访问不存在的文件时,第二个参数变为 404。所以我认为这些必须是http响应代码。

使用 Chrome 的网络检查器时,我看到的结果是 - 应该是 - 工作 cronjob 是 http 500。我无知...有什么方法可能是由其他人设置的,偶然的,也许是由 php 中的某个地方设置的.ini或者我可以查看的 httpd.conf

结构http://www.domain.com/CronJobs/file.php.我发现它只发生在CronJobs文件夹中的文件上。Cronjobs应该使用wget执行。

--加法

也许如果它有任何帮助,用于请求的 .htaccess 中的规则是:

RewriteCond %{REQUEST_URI} !^(.*)FCKEditor(.*)$
RewriteRule ^(.*).html$ /index.php?pageId=LandingPage&Alias=$1 [L]

显然不应该使用任何规则,服务器应该只提供所请求的PHP文件。

-- 第二次添加

我还尝试清空 .htaccess 文件,然后请求 cronjob。我仍然收到错误 500。只是这次是从PHP文件本身提供的,而不是从索引.php(原始.htaccess内容使用

索引)。

发现问题,希望这个答案将来对某人有所帮助。

好吧,这个有点分散注意力,但我发现了我的问题。权限。我已将文件夹权限设置为 777,而该文件夹可能无法写入。我已经将权限改回 755,它再次工作。

日志中的错误都像:[Mon Oct 21 20:00:01 2013] [warn] Directory "/home/accountname/domains/domain.com/public_html/CronJobs" is writeable by group

根据该错误进行搜索后,我遇到了 https://my.hostmonster.com/cgi/help/594,这就是我看到权限问题的地方。

(我之前已将简单锁定文件的权限设置为 777)。