Nginx-Reverse-Proxy-Swoole-Einstellungen
習慣沉默
習慣沉默 2017-05-16 17:08:26
0
3
1137

Nginx-Reverse-Proxy-Swoole-Einstellungsproblem

Erste Version
php 7.1.0
swoole 2.0.5
nginx 1.10.2

Folgen Sie den Anweisungen der offiziellen Website http://wiki.swoole.com/wiki/p..., um den Nginx-Reverse-Proxy für Swoole einzurichten,

server {
    root /alidata/www/vweb/;
    server_name 域名;

    location / {
        #添加了这个也不行
        #try_files $uri $uri/ /index.php?$query_string; 

        #下面这几行是swoole官网设定
        if (!-e $request_filename) {
            proxy_pass http://127.0.0.1:9501;
        }
        proxy_http_version 1.1;
        proxy_set_header Connection "keep-alive";
        proxy_set_header X-Real-IP $remote_addr;    
    }
}
  1. Es gibt kein Problem beim Zugriff auf Domänenname/index.php oder Domänenname/admin/ usw., und das Ergebnis der Swoole-Codeausführung kann angezeigt werden (im Hintergrund sind zwei Swoole-Zugriffsdatensätze zu sehen)

  2. Beim direkten Zugriff auf den Domänennamen wird jedoch 403 angezeigt (Sie können sehen, wie Swoole im Hintergrund einen Zugriffsdatensatz druckt)

  3. try_files $uri $uri/ /index.php?$query_string; in der Nginx-Konfiguration hinzugefügt, aber es hat keine Auswirkung

Bitte gebt mir einen Rat!

Der Swoole-Code lautet wie folgt (einfach Zugriffsdatensätze ausdrucken):

$http = new swoole_http_server("127.0.0.1", 9501);
$http->on('request', function ($request, $response) {
    echo '-------------------Request---#'.rand(1000, 9999).'------------------'."\n";
    $response->end("<h1>Hello Swoole. #".rand(1000, 9999)."</h1>");
});
$http->start();
習慣沉默
習慣沉默

Antworte allen(3)
过去多啦不再A梦

if(!-e $request_filename)
满足这个条件才转发至http://127.0.0.1:9501
显然条件不满足
文件和目录判断
-f和!-f判断是否存在文件
-d和!-d判断是否存在目录
-e和!-e判断是否存在文件或目录
-x和!-x判断文件是否可执行

你只访问域名,“/”是存在的 所以不会转发

如楼上所说你需要指定一个默认请求文件

phpcn_u1582

根据你的要求,server 里应有一行

index index.php;

漂亮男人

你吧你的后端当google反代就可以了。

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage