HTTP 错误 500.0 - Internal Server Error

Aimis 2011-05-24 10:15:42
使用过程:zendstudio8(php5.3) + IIS7.5

新建了一个Test.php
<?php

$server='192.168.0.122';
$username='sa';
$password='!@#$%';
$database='CxOnline_2010_08_30';

$conn = mssql_connect( $server, $username, $password)
or die("Couldn't connect to SQL Server on $server");
$db = mssql_select_db($database) or die("Couldn't open database $database");

?>

F5运行后出现以下错误:

HTTP 错误 500.0 - Internal Server Error
无法显示页面,因为发生内部服务器错误。
模块 FastCgiModule
通知 ExecuteRequestHandler
处理程序 PHP_via_FastCGI
错误代码 0x00000000
请求的 URL http://localhost:80/MyTest/Test.php
物理路径 E:\_PHP_Test\MyTest\Test.php
登录方法 匿名
登录用户 匿名


本人初入PHP,请多指教~
...全文
25799 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
Aimis 2011-05-25
  • 打赏
  • 举报
回复
感谢各位的指教,谢谢~

jt
Aaron_ 2011-05-24
  • 打赏
  • 举报
回复
你的其他模块有错误。

建议按照1楼所说,重新搭配环境
一起混吧 2011-05-24
  • 打赏
  • 举报
回复
你的环境还没搭配好吧。推荐用集成环境。wamp,xampp,appserv简单,好用。
littlebirds 2011-05-24
  • 打赏
  • 举报
回复
那你设下呗:

date_default_timezone_set(PRC);
Aimis 2011-05-24
  • 打赏
  • 举报
回复
我靠,终于报出错误来了,难道修改ini文件后不能马上应用,还有延迟?

错误如下:
Warning: main(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for '8.0/no DST' instead in E:\_PHP_Test\MyTest\BL.php on line 8 Fatal error: Call to undefined function mssql_connect() in E:\_PHP_Test\MyTest\BL.php on line 8
Aimis 2011-05-24
  • 打赏
  • 举报
回复
需要额外安装“SQL Server Driver for PHP”?
littlebirds 2011-05-24
  • 打赏
  • 举报
回复
如果还是不行,参考微软的解释:
http://support.microsoft.com/kb/942031
littlebirds 2011-05-24
  • 打赏
  • 举报
回复
我baidu的,可能涉及系统应用了:

http 500内部错误的解决办法!
详见:
个人博客 一个程序员自己的博客
欢迎光临http://loveme-0617.blog.163.com QQ:534031407

我之前也是遇过,你按我下面的操作可以解决.
先启动MSDTC服务,什么是MSDTC服务?显示名称:Distributed Transaction Coordinator;描述:协调跨多个数据库、消息队列、文件系统等资源管理器的事务。如果停止此服务,则不会发生这些事务。如果禁用此服务,显式依赖此服务的其他服务将无法启动。
CMD下net start msdtc
结果显示“Distributed Transaction Coordinator 服务不能启动”。
解决方法:
把 C:\WINDOWS\system32\dtclog 这个目录重命名(如果有的话,没有就直接省去这一步),然后重新建立该目录。
在命令行下:msdtc -resetlog
再net start msdtc,显示服务启动成功了.
然后右键我的电脑--管理--本地用户和组,给“IUSR_机器名”和“IWAM_机器名”两个用户设置密码,要一样比如我们都设:123。
接着“开始”→“运行”→输入“cmd”并确定,执行以下命令:
%SystemDrive%
cd %SystemDrive%\Inetpub\AdminScripts
cscript.exe adsutil.vbs set w3svc/wamuserpass 123
cscript.exe adsutil.vbs set w3svc/anonymoususerpass 123
看一下,行了没有?如果还不行,那么执行以下命令:
cscript.exe synciwam.vbs -v
然后重启IIS,命令:iisreset
到这一步还是不行,最后在CMD下执行以下命令:
%SystemDrive%
cd %SystemRoot%\System32\inetsrv
rundll32 wamreg.dll, CreateIISPackage
regsvr32 asptxn.dll
关闭所有的IE窗口后重新打开再执行,OK了!!
Aimis 2011-05-24
  • 打赏
  • 举报
回复
修改后,错误内容依旧~~~~~~~~~~~~~~
Aimis 2011-05-24
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 xuzuning 的回复:]
php.ini 中
error_reporting = E_ALL & ~E_NOTICE
display_errors = On

只有在设置了错误处理方式后,php 的错误才不会引发 500 错误(拒绝访问)
[/Quote]

我试试,先谢了~
xuzuning 2011-05-24
  • 打赏
  • 举报
回复
php.ini 中
error_reporting = E_ALL & ~E_NOTICE
display_errors = On

只有在设置了错误处理方式后,php 的错误才不会引发 500 错误(拒绝访问)
Aimis 2011-05-24
  • 打赏
  • 举报
回复
我在IIS7.5建立的是虚拟目录并转为应用程序,并未建立站点~

这应该不影响我使用Zend Studio吧?
Aimis 2011-05-24
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 xuzuning 的回复:]
php5.3 无 mssql 扩展函数组

另外你需要启用错误显示
[/Quote]

internet选项->高级->取消“显示友好http错误信息”~

还是另有其他,请不吝赐教~
xuzuning 2011-05-24
  • 打赏
  • 举报
回复
php5.3 无 mssql 扩展函数组

另外你需要启用错误显示
littlebirds 2011-05-24
  • 打赏
  • 举报
回复
IIS 7.0 使用以下服务器错误 HTTP 状态代码:

500 - 内部服务器错误。

IIS 7.0 定义以下 HTTP 状态代码,表明 500 错误的具体原因:
500.0 - 发生模块或 ISAPI 错误。
500.11 - 正在 Web 服务器上关闭应用程序。
500.12 - 应用程序正忙于在 Web 服务器上重新启动。
500.13 - Web 服务器太忙。
500.15 - 不允许直接请求 Global.asax。
500.19 - 配置数据无效。
500.21 - 模块无法识别。
500.22 - 无法在托管管道模式下应用 ASP.NET httpModules 配置。
500.23 - 无法在托管管道模式下应用 ASP.NET httpHandlers 配置。
500.24 - 无法在托管管道模式下应用 ASP.NET impersonation 配置。
500.50 - RQ_BEGIN_REQUEST 通知处理期间,发生重写错误。发生配置或入站规则执行错误。
littlebirds 2011-05-24
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 aimis 的回复:]

如果是配置问题,那为什么我把原有的注销掉,然后加入 phpinfo();又可以访问

<?php
/*
$server='192.168.0.122';
$username='sa';
$password='!@#$%';
$database='CxOnline_2010_08_30';

$conn = mssql_conn……
[/Quote]

info里面有无mssql这项?
Aimis 2011-05-24
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 lazygc520 的回复:]
php的iis设置。建议自己百度一下。
[/Quote]

这个我已经配置上了,且可以正常访问php文件~
Aimis 2011-05-24
  • 打赏
  • 举报
回复
如果是配置问题,那为什么我把原有的注销掉,然后加入 phpinfo();又可以访问

<?php
/*
$server='192.168.0.122';
$username='sa';
$password='!@#$%';
$database='CxOnline_2010_08_30';

$conn = mssql_connect( $server, $username, $password)
or die("Couldn't connect to SQL Server on $server");
$db = mssql_select_db($database) or die("Couldn't open database $database");
*/

phpinfo();
?>



littlebirds 2011-05-24
  • 打赏
  • 举报
回复
php的iis设置。建议自己百度一下。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧