我发现了一个惊人的问题。我今天发布了一个基于传销业务的网站。我整天测试网站,但没有发现错误。但到了晚上,当我尝试登录会员页面时,我收到以下错误:
[21-Sep-2011 13:30:36] PHP Warning: session_start() [<a href='function.session-start'>function.session-start</a>]: open(/tmp/sess_44507540b8d51d06160a2856360692e6, O_RDWR) failed: Permission denied (13) in /home/dashingb/public_html/sts/conf.php on line 3
我在使用apache服务器的共享主机上。我没有root权限。如何解决问题?上面还显示警告,但是当我尝试打开登录页面时,它显示500错误(http://dashingbird.com/sts/admin/)
我的会话启动方法如下:
<?php
if(! isset($_SESSION)){
session_start();
}
?>
以下错误正在获得:
内部服务器错误
服务器遇到内部错误或配置错误 无法完成您的请求。
请联系服务器管理员webmaster@dashingbird.com和 告诉他们错误发生的时间,以及你可能做的任何事情 已经完成可能导致错误。
有关此错误的详细信息可能在服务器错误中可用 日志中。
此外,尝试时遇到404 Not Found错误 使用ErrorDocument来处理请求。 Apache / 2.0.63(Unix) mod_ssl / 2.0.63 OpenSSL / 0.9.8e-fips-rhel5 mod_auth_passthrough / 2.1 mod_bwlimited / 1.4 FrontPage / 5.0.2.2635服务器在dashingbird.com端口 80
当我关闭error_reporting(E_ALL)时,我刚收到上述警告(会话警告)。 请帮帮我..
答案 0 :(得分:3)
很可能PHP无法将会话文件写出到为会话保存路径指定的任何目录。您可以通过session_save_path()
了解该路径。
如果您无法修改该目录的权限以允许Web服务器进行写入,则必须将PHP配置更改为指向可以读取/写入文件的目录。或者在调用session_save_path('/path/to/writeable/dir')
之前,使用session_start()
在每个脚本中手动覆盖它。
答案 1 :(得分:2)
服务器上似乎有问题。通常在共享主机上,您可以自己做。我建议您通过电子邮件(或打开机票)获得托管支持。
最有可能出现某种许可问题。
此外,500错误意味着服务器配置出现问题,主要是由.htaccess
文件中的某些错误引起的。