首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP刷新停止了IIS 8中的刷新

PHP刷新停止了IIS 8中的刷新
EN

Stack Overflow用户
提问于 2016-05-19 06:49:26
回答 3查看 1K关注 0票数 8

注意:,我知道这看起来像这个问题的复制品。我看不出这是怎么回事。我已经说过我已经检查过这个问题了,我尝试了所有的答案,但都没有成功。

以下是我尝试过的:

  1. 在Dario的回答下,我按照步骤执行,但是在name部分没有找到任何php
  2. 在接受的答案上,我在命令行提示符上运行相同的代码,但它显示: "/name='PHP55_via_FastCGI'.ResponseBufferLimit:0“appcmd.exe set /section:handlers /section:handlers 这会返回如下: 错误(消息:找不到请求的集合元素。)
  3. 然后我查看了PHP手册: 冲洗手册 我没有在配置文件中找到像_via_FastCGI那样的任何东西
  4. 我检查了Plesk的PHP设置,是的,我的服务器在FastCGI模式下运行。

所以,我在我的开发服务器上花了那么多时间来处理这个刷新部分,而现在在我的实时服务器上,它已经不能工作了。如有任何帮助,将不胜感激。

更新1:

正如@artlung建议的那样,我在这里附上了屏幕截图:

更新2:

以下是我在notepad++中通过关键字"FastCGI“搜索发现的内容

代码语言:javascript
复制
<add name="FastCgiModule" lockItem="true" />
<add name="PleskEngine-FastCGI-html" path="*.html" verb="*" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\admin\bin\php-cgi.exe|-dauto_prepend_file=auth.php" resourceType="Either" responseBufferLimit="0" />
<add name="PleskEngine-FastCGI-html" path="*.html" verb="*" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\admin\bin\php-cgi.exe|-dauto_prepend_file=auth.php" resourceType="Either" responseBufferLimit="0" />
<add name="PleskEngine-FastCGI-php3" path="*.php3" verb="*" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\admin\bin\php-cgi.exe|-dauto_prepend_file=auth.php" resourceType="Either" responseBufferLimit="0" />
<add name="PleskEngine-FastCGI-php3" path="*.php3" verb="*" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\admin\bin\php-cgi.exe|-dauto_prepend_file=auth.php" resourceType="Either" responseBufferLimit="0" />
<add name="PleskEngine-FastCGI-php" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\admin\bin\php-cgi.exe|-dauto_prepend_file=auth.php" resourceType="Either" responseBufferLimit="0" />
<add name="PleskEngine-FastCGI-php" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\admin\bin\php-cgi.exe|-dauto_prepend_file=auth.php" resourceType="Either" responseBufferLimit="0" />
<add name="PHP-phtml" path="*.phtml" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP55\php-cgi.exe" resourceType="Either" />
<add name="PHP-php3" path="*.php3" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP55\php-cgi.exe" resourceType="Either" />
<add name="PHP-php" path="*.php" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP55\php-cgi.exe" resourceType="Either" />
<add name="PHP-phtml" path="*.phtml" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP55\php-cgi.exe" resourceType="Either" />
<add name="PHP-php3" path="*.php3" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP55\php-cgi.exe" resourceType="Either" />
<add name="PHP-php" path="*.php" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP55\php-cgi.exe" resourceType="Either" />
<add name="PHP-phtml" path="*.phtml" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP55\php-cgi.exe" resourceType="Either" />
<add name="PHP-php3" path="*.php3" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP55\php-cgi.exe" resourceType="Either" />
<add name="PHP-php" path="*.php" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP55\php-cgi.exe" resourceType="Either" />
EN

回答 3

Stack Overflow用户

发布于 2016-05-31 04:58:51

appcmd.exe set config /section:handlers "/[name='NAME'].ResponseBufferLimit:0"

NAME更改为要更新的处理程序的名称,例如PHP7_via_FastCGI

检查路径,它应该解决你的问题,我有同样的问题和这个方法帮助我。

票数 4
EN

Stack Overflow用户

发布于 2016-05-31 14:16:28

IIS中有许多功能及其设置可能相互冲突。

您似乎无法为您的处理程序设置responseBufferLimit

你得先知道你的负责人叫什么名字。

打开命令提示符并运行:

代码语言:javascript
复制
%windir%\system32\inetsrv\appcmd.exe list config -section:system.webServer/handlers | find "FastCGI"

可以像下面这样列出多个处理程序,这是可以的。你的是顶级的,在这里是PHP53_via_FastCGI

代码语言:javascript
复制
<add name="PHP53_via_FastCGI" path="*.php" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\PHP\v5.3\php-cgi.exe" resourceType="Either" />
<add name="PHP54_via_FastCGI" path="*.php" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\PHP\v5.4\php-cgi.exe" resourceType="Either" /
<add name="PHP55_via_FastCGI" path="*.php" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\PHP\v5.5\php-cgi.exe" resourceType="Either" />
<add name="PHP56_via_FastCGI" path="*.php" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\PHP\v5.6\php-cgi.exe" resourceType="Either" />
<add name="PHP70_via_FastCGI" path="*.php" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\PHP\v7.0\php-cgi.exe" resourceType="Either" />

通过将PHP53_via_FastCGI替换为您的responseBufferLimit,运行以下命令来更改responseBufferLimit

代码语言:javascript
复制
%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/handlers /[name='PHP53_via_FastCGI'].responseBufferLimit:"0" /commit:apphost

通过运行以下命令重新启动IIS:

代码语言:javascript
复制
iisreset

再次尝试load php页面。

如果仍然不能像预期的那样工作,您可以确定这是因为IIS的动态压缩。由于默认情况下它处理所有内容类型为text/*的动态响应,所以当它启用时,它可以阻止一个PHP进行压缩。

您可以暂时禁用动态压缩,以查看它是否有效。备份您的网站的web.config,并放置以下内容,并尝试加载您的PHP页面。

web.config

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <urlCompression doDynamicCompression="false" />
    </system.webServer>
</configuration>

如果不想禁用所有网站的动态压缩,还可以禁用虚拟应用程序、物理和虚拟目录或特定文件的动态压缩。

有关更多信息,请查看HTTP压缩功能需求

票数 3
EN

Stack Overflow用户

发布于 2016-05-29 08:23:48

查找fcgiext.ini并取消注释/向其添加行ResponseBufferLimit=0,然后重新启动IIS。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37315815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档