今天准备将一个php
demo放在IIS下运行,网站在IIS下的配置是这样的:
应用程序池是集成模式下的.net
framework
2.0(2.0或4.0没什么关系,因为php以fastCGI的方式在跑),
应用程序池标识配置为IIS内置的NETWORKSERVICE,
使用的认证方式为匿名身份验证。
打开本地的网站,访问php页面,
出现了500错误。
好吧,是权限问题,最简单的解决办法是把C:UsersAdministratorPhpstormProjectsphpDemo的权限设成Everyone,
并允许完全控制:
重新访问php页面,成功了:
上面的方法是够简单,但也太不安全了,平时本地搭个demo这样做没问题,真正上线的时候,这样做迟早出问题的。
于是重新设置,把该目录下的只读权限赋给NETWRORKSERVICE帐号再试一下
不过问题还是没有解决,访问的时候,出现了401错误
错误信息中包括显示登录用户为匿名,检查了网站下的身份验证(再点击
匿名身份验证->编辑),原来网站默认情况下,在登录方法为匿名时,使用的默认登录用户为IUSR(就是我们看到的匿名登录用户了)
那么解决办法就是:
1.
将IUSR设置为C:UsersAdministratorPhpstormProjectsphpDemo的读权限,类似之前对NETWORKSERVICE的设置。
2.
或选择使用应用程序池标识即可。
经试验,方法1与2都成功。
Note:NETWORKSERVICE在IIS7中隶属于iis_iusers用户组,之前对NETWORKSERVICE的设置也可以改为对iis_iusers的设置,同样也可以解决问题,只是权限被进一步放宽了而已。
以上所述就是本文的全部内容了,希望大家能够喜欢。
原因:设置错误造成的。解决方法:尝试添加新功能配置来解决此问题。
如下参考:
1.第一个右键点击开始菜单,点击管理工具,找到服务器管理器点击打开,如下图。
2.在道路左上角找到一个斑点颜色点击,右边出现一个面板,单击角色下面的Web服务器(IIS)。
3.进去并下拉找到角色服务,可以看到安装了哪些功能,哪些功能没有安装,在这里找到http重定向,如下图。
4.选择要安装http重定向的函数,然后单击Next下一步,如下图。
5.过一会儿,成功在几分钟后,你可以看到安装了什么功能,然后你可以使用它们,如下图。
错误一: 处理程序“FastCGI”在其模块列表中有一个错误模块“FastCgiModule”。英文系统提示:Handler “FastCGI” has a bad module “FastCgiModule” in its module list。
原因分析:这个主要是没有安装应用程序开发功能。
解决办法:把应用程序开发功能选择上就可以了,PHP的CGI版本,CGI的功能是必须选择的。
错误二:模块IsapiModule通知ExecuteRequestHandler处理程序PHP-Handler错误代码0x800700
或 处理程序“AboMapperCustom-5095705”在其模块列表中有一个错误模块“IsapiModule”
原因分析:没有安装ISAPI扩展。
解决办法:在IIS安装ISAPI扩展即可。
错误三:The FastCGI Handler was unable to process the request.
原因分析:这种多出现于PHP升级,一般是你升级前的PHP.ini存放在C:\windows\system32\php.ini
解决办法:删除C:\windows\system32\php.ini,并重启IIS。
错误四:
解决办法:这个可能是权限不足导致的,在网站根目录的上一级目录加Users的读权限即可。
错误五:
错误提示:Unable to place a FastCGI process in a JobObject. Try disabling the Application Pool CPU Limit feature
原因分析:IIS开启了程序池的CPU限制,而FastCGI模式的PHP不支持CPU限制。
解决办法:取消程序池CPU限制,或使用ISAPI模式的PHP。
错误六:
安装PHP7.0套件出现错误“FastCGI进程意外退出”,双击“php-cgi.exe”出现提示“无法启动此程序,因为计算机中丢失 api-ms-win-crt-stdio-l1-1-0.dll。尝试重新安装该程序以解决此问题。”,如图:
原因分析:出现此种情况,是因为服务器无法安装VC++ 2015运行库,导致php运行环境不具备,因此出错。
解决办法:据分析,出现此种情况的解决办法最好就是重装系统,并且更换 *** 作系统,如果还不行,建议打SP1补丁。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)