我在使用 php 的内置网络服务器时遇到了一个问题,因为它似乎只允许单个并发连接。
我在测试一些并发 ajax 请求时发现了这一点,这些请求似乎都是同时完成的。
这不是什么大问题,因为我总是可以启动 apache(这就是我得出上述结论的方式),但我已经习惯了直接从我的 IDE 运行 php。
有什么办法可以增加这个,还是php的限制?
我的示例代码会阻塞内置服务器,但在 apache 上运行良好:
$.ajax({
type: "POST",
url: slow.php,
data: "",
success: function(data){
clearInterval(checkid);
console.log('slow call finished');
}
});
checkid = setInterval(function(){
$.get('somefile.txt', function(data){
console.log('quick call finished');
});
},1000);
//slow.php
sleep(10);
echo 'all done';
引用自manual http://php.net/manual/en/features.commandline.webserver.php:
如果请求被阻止,PHP 应用程序将停止运行。
所以是的,它是单线程的。另外,它只是开发的辅助工具,实际上您很少想使用它,因为它不支持重要的外部技术,例如FallbackResource
, mod_rewrite
and .htaccess
它们与大多数网络项目交织在一起。
支持 PhpStorm 等现代 IDE保存时自动部署 http://www.jetbrains.com/phpstorm/webhelp/uploading-and-downloading-files.html#d178577e665本地和远程测试网络服务器,这在比少数文件更大的项目中更为实用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)