目前PHP项目基本上都是HTTP server ,nginx 代理转发
$http = new swoole_http_server("0.0.0.0", 9503); //设置静态资源 $http->set([ 'enable_static_handler' => true, 'document_root' => '/home/demo/data' //静态资源,默认存放路径 ]); $http->on('request', function ($request, $response) { var_dump($request->get, $request->post); //获取GET参数和POST参数
$response->header("Content-Type", "text/html; charset=utf-8"); $response->cookie('s', 'xx', time()+1800); //设置COOKIES $response->end("<h1>Hello Swoole. #".rand(1000, 9999).json_encode($request->get)."</h1>"); //end只支持字符}) ; $http -> start () ;
测试可以用
1.curl http://127.0.0.1:9503
2.可以用VHOST配置
也可以在nginx.conf中添加代理
server {
root /data/wwwroot/;
server_name local.swoole.com;
location / {
proxy_http_version 1.1;
proxy_set_header Connection "keep-alive";
proxy_set_header X-Real-IP $remote_addr;
if (!-e $request_filename) {
proxy_pass http://127.0.0.1:9501;
}
}
}
用浏览器访问,记住防火墙端口设置哦
如果不运行http.php,会报502错误,上游错误哦