Proxy

由于 Swoole Server 对 HTTP 协议的支持并不完整,建议仅将 EasySwoole 作为后端服务,并且在前端增加 NGINX 或 APACHE 作为代理,参照下面的例子添加转发规则

Nginx

  1. server {
  2. root /data/wwwroot/;
  3. server_name local.swoole.com;
  4. location / {
  5. proxy_http_version 1.1;
  6. proxy_set_header Connection "keep-alive";
  7. proxy_set_header X-Real-IP $remote_addr;
  8. if (!-f $request_filename) {
  9. proxy_pass http://127.0.0.1:9501;
  10. }
  11. }
  12. }

代理之后,可通过$request->getHeader('x-real-ip')[0]获取客户端真实ip

Apache

  1. <IfModule mod_rewrite.c>
  2. Options +FollowSymlinks
  3. RewriteEngine On
  4. RewriteCond %{REQUEST_FILENAME} !-d
  5. RewriteCond %{REQUEST_FILENAME} !-f
  6. #RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] fcgi下无效
  7. RewriteRule ^(.*)$ http://127.0.0.1:9501/$1 [QSA,P,L]
  8. #请开启 proxy_mod proxy_http_mod request_mod
  9. </IfModule>

其他

  • 项目文档仓库

  • DEMO

  • QQ交流群

    • VIP群 579434607 (本群需要付费599元)
    • EasySwoole官方一群 633921431(已满)
    • EasySwoole官方二群 709134628
  • 商业支持:

    • QQ 291323003
    • EMAIL admin@fosuss.com
  • 作者微信

    反向代理 - 图1

  • 捐赠
    您的捐赠是对Swoole项目开发组最大的鼓励和支持。我们会坚持开发维护下去。 您的捐赠将被用于:

    • 持续和深入地开发
    • 文档和社区的建设和维护
  • easySwoole 的文档采用 GitBook 作为文档撰写工具,若您在使用过程中,发现文档有需要纠正 / 补充的地方,请 fork 项目的文档仓库,进行修改补充,提交 Pull Request 并联系我们