码迷,mamicode.com
首页 > Web开发 > 详细

IIS服务器环境下某路径下所有PHP接口无法运行报500.19错误

时间:2018-07-31 22:11:56      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:查看   uri   windows   返回   网站   als   php7   文件中   chrome   

IIS服务器环境下某路径(文件夹)下所有PHP接口无法运行报500.19错误

环境:IIS8.5 + php7.2.1
错误描述:某目录下(如 d:\web\A)所有php接口文档运行错误,接口测试工具返回空内容,浏览器提示500错误

解决方式:

  1. 开启PHP和IIS错误日志;
  2. 查看IIS日志,发现线索
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) cs(Referer) sc-status sc-substatus sc-win32-status time-taken
2018-07-31 09:33:36 172.0.0.0 GET /xxxx/xxx.php - 443 - 100.0.0.0 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/64.0.3282.140+Safari/537.36+Edge/17.17134 - 500 19 183 15
  1. 最主要是字段帮了忙 500 19代表500.19错误,经查是web服务器内部运行错误
  2. 仔细查看IIS各项设置并回忆可能的改动,发现 A 目录属于“新增”目录,里边所有文件是从之前测试服务器上复制过来,其原属于测试服务器上一个独立“网站”配置,因此 web.config 文件中包含了对".txt"的请求筛选,即不允许访问".txt"的文件。当 A 目录整体复制到当前服务器时,保存到默认“网站”下的一个虚拟目录,而默认网站也设置了相同的请求筛选,导致配置冲突,在对 A 进行访问时整体路径都出错。
  3. 打开 A 下的配置文件,去掉所有和所属“网站”冲突的配置,具体为
<security>
            <requestFiltering>
                <fileExtensions>
                    <add fileExtension=".txt" allowed="false" />
                </fileExtensions>
            </requestFiltering>
        </security>

并应用,重启网站,解决

IIS服务器环境下某路径下所有PHP接口无法运行报500.19错误

标签:查看   uri   windows   返回   网站   als   php7   文件中   chrome   

原文地址:https://www.cnblogs.com/cinlap/p/9397459.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!