完美解决windows下php本地curl超时问题解决

背景:windows下开发,api所在的项目跟后台的项目网址不一致,并且api需要请求,如果两个项目nginx处理php请求的端口在9000的话,那么则会出现请求超时,出现以上原因是因为windows 下 nginx+php的环境,不支持并发请求的原因。当同时访问多个域名,并且同时指向你本地服务的时候,就不支持并发了。(linux,mac没有这个问题)

举个栗子:

我本地有两个域名,localhost/demo1/index.php 这里需要请求另外一个网址,localhost/demo2/demo.php获取数据 ,windows下php是不支持并发请求的,但是,开法中不可能每次都上传到测试机器吧,所以就有了这篇文章了。

博主用在是phpstudy开发,下面就我工作的时候碰到的来讲解吧。

我所在的项目:

http://www.kuaiji.com/ 需要通过api获取数据 http://api.course.kuaiji.com

 

nginx配置,主要是把nginx处理php请求的端口改成不一样即可,然后phpstudy启动一个客户端,命令行启动一个客户端

cmd切换到php安装目录: E:\php2018\PHPTutorial\php\php-7.2.1-nts目录,然后启动: php-cgi.exe -b 127.0.0.1:9001 -c php.ini 

server{
    listen 80;
    server_name  www.kuaiji.com;
    root  E:/php2018/PHPTutorial/WWW/kuaiji/public;

    index  index.html index.htm index.php;
    location / {
         try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php(.*)$  {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        fastcgi_param  PATH_INFO  $fastcgi_path_info;
        fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
        include        fastcgi_params;
    }
}
server{
    listen 80;
    server_name  api.course.kuaiji.com;
    root  E:/php2018/PHPTutorial/WWW/api-course/public;

	index  index.html index.htm index.php;
    location / {
		 try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php(.*)$  {
		fastcgi_pass   127.0.0.1:9001;
		fastcgi_index  index.php;
		fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
		fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
		fastcgi_param  PATH_INFO  $fastcgi_path_info;
		fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
		include        fastcgi_params;
	}
}


小伙伴们看完这篇文章学会了,怎么解决windows下curl超时的问题了吗?

你可能感兴趣的:(php)