Einfache Nginx-Konfiguration funktioniert nicht

Einfache Nginx-Konfiguration funktioniert nicht

Ich bin ein Entwickler ohne jegliche Servererfahrung. Dieses Projekt, an dem ich arbeite, ist mein erster Ausflug in die Welt der Server. Im Grunde muss ich eine API online hosten, auf einem Linode-Server, auf dem Nginx unter Ubuntu läuft. Und ich habe Probleme, einen einfachen Serverblock zum Hosten einer HTML-Indexseite einzurichten, mit nur einem h1-Tag, der „Hallo“ sagt. Ich habe verschiedene Tutorials zum Funktionieren eines einfachen Serverblocks befolgt und gelesen. Ich habe diese Blöcke sogar auf meinem lokalen Computer zum Laufen gebracht, aber ich habe Probleme, sie auf dem Remote-Server zum Laufen zu bringen.

Ich zeige Ihnen einige Blöcke, die bei mir auf Linode nicht funktioniert haben:

Zunächst ein einfacher Block zum Servern einer statischen HTML-Seite. Das funktioniert auf meinem lokalen Rechner:

server {

    listen 8005;
    index index.html;
    root /srv/www/site;

}

ein weiterer einfacher Block:

server {

    listen [server ip]:8006;
    server_name "";
    index index.html;
    root /srv/www/site;

    location ~/ {

        root /srv/www/site;

    }

}

Ein Block zum Bereitstellen von PHP (funktioniert lokal):

server {

    listen [server ip]:8007;
    server_name "";
    index index.php index.html index.htm;
    root /srv/www/site;

    location / {

        try_files $uri $uri/ /index.php?q=$uri&$args;

    }

    location ~* \.php$ {

        try_files $uri /index.php;
        fastcgi_index index.php;
        fastcgi_pass 127.0.0.1:9000;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param SCRIPT_NAME $fastcgi_script_name;

    }

}

Immer wenn ich versuchte, über den Browser darauf zuzugreifen, kam es zu Timeouts der Serververbindung. Ich habe kein DNS eingerichtet, also versuchte ich, über die Server-IP und die Portnummer darauf zuzugreifen:

[server ip]:[port]

oder

[server ip]:[port]/index.html

aber nichts bekommen.

Eine Ursache für das Problem könnte die Tatsache sein, dass bereits eine andere Anwendung auf dem Server gehostet wird. Sie hat ihren eigenen Block und läuft auf ihrem eigenen Port. Sie hat einen eigenen DNS-Namen, der darauf verweist. Aber das sollte doch alles keine Rolle spielen, oder? Denn jeder Serverblock ist im Grunde ein virtueller Server oder erstellt eine virtuelle Domäne. Der Zugriff über IP und Port sollte problemlos funktionieren, aber er funktioniert nicht!

Das ist so ziemlich alles, was mir einfällt. Mein Wissen auf diesem Gebiet ist erschöpft und ich brauche die Hilfe von klugen Leuten!

Antwort1

Versuchen Sie, vom selben Server aus über 127.0.0.1:8005 darauf zuzugreifen. Wenn das funktioniert, liegt es an Ihren IP-Tabellen. Versuchen Sie in diesem Fall, etwas wie Folgendes auszuführen: iptables -A INPUT -i eth0 -p tcp --dport 8005 -j ACCEPTum den Port zu öffnen.

verwandte Informationen