Astropaul: Codeigniter API Nginx

Beitrag lesen

Hallo,

ich hab da ein kleines Problem und vielleicht kann mir jemand den nötigen Hinweis geben. Sämtliche Recherchen und scheinbare Lösungen haben mich nicht ans Ziel geführt, ich denke, mir fehlen da ein paar Kentnisse.

Es geht um Folgendes. Ich habe eine Codeigniter-Anwendung (DB mysql). Die ganze Applikation läuft unter Ubuntu 18.04 Server auf einem nginx-Server. Unter der URL "example.com/api" können Json-Daten abgeholt werden.

zum Beispiel wäre ein Aufruf, um alle nötigen Json-Daten abzuholen: example.com/api/get

wobei natürlich get die Methode ist, auf die Codeigniter die URI mappt. Api.php ist der controller.

Gebe ich jetzt diese URL in den Browser ein, werden mir wunderbar die Datenausgegeben. Versuche ich jetzt das gleiche über ajax zu machen, bekomme ich immer eine 404-Fehlermeldung. (CORS ist nicht das Problem).

im nginx-log finde ich immer, dass die Datei "/home/user/websites/myserver/api/get/index.php" nicht gefunden wurde. Nginx misinterpretiert da was völlig falsch, er mappt Teile des URLpath auf den physischen Dateipfad.

a) warum tut nginx das? b) warum tut er das nur bei einem Ajax-Request? Was ist bei einem Ajax-Request genau anders, als bei einem Request über Browserzeile?

Hatte jemand schon mal dieses Problem? Wo kann ich suche? Oder wo muss ich da was drehen?

Lieben Dank Paul Heimann

ps. wie macht man hier im Editor denn Zeilenumbrüche? ☔️