• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Ajax-Call 403 forbidden

Anusha

Mitglied
Hallo,

ich habe folgendes Problem:

folgender Code:

Code:
    function count_click(intID) {
        $.ajax({
                   type: "POST",
                   url: "./php/some_processing_function.php",
                   data: {ad_id: intID},
                   success: function(strResponse) {}    
            });            
    }
Hat eine Antwort von 403-Forbidden zur Folge....
Bei mir am PC unter Xampp gehts jedoch.
Hab ich irgendwas nicht beachtet, oder liegt es an irgendwelchen Servereinstellungen?

Mit freundlichen Gruessen
 
Werbung:
Was passiert denn, wenn du die entsprechende PHP-Datei direkt über den Browser aufrufst? Und bist du sicher, dass der Pfad stimmt?
 
Hmm... ist es nicht so, dass die Datei existieren muss, wenn ein 403 Status Code zurueck kommt? Sonst muesste es ja eigentich 404 - not found heissen.

Und ich seh grad... wenn ichs im Browser direkt aufrufe, dann kommt auch forbidden.

Dann ist der Grund wohl der Verzeichnis-Schutz?
 
Werbung:
Ja, würde ich sagen. Also was Serverseitiges. Wenn du Apache nutzt, vielleicht eine .htaccess-Datei oder ähnliches.

Am Rande: Im Prinzip ist es schon so, dass 404 zurückgeliefert werden sollte, wenn eine Datei nicht existiert. Nur müssen URLs nicht immer 1:1 Dateien entsprechen, was solche Aussagen immer etwas schwierig macht.

Anders gesagt: Der Server ist im Grunde eine Anwendung, die unter anderem einen Pfad als Eingabe bekommt. Was der Server aus diesem Pfad macht, ist dann frei festlegbar. Das heißt, ich kann auch problemlos „index.php“ zurückliefern, obwohl „abc/meine-grafik.jpg“ nachgefragt wurde. Auch die Statuscodes sind theoretisch frei wählbar.
 
Dazu würde ich gerne mehr wissen. Ich weiß, dass man das mit der URL mittels mod_rewrite realisieren kann, aber ich würde einfach gerne mehr wissen. Kannst du da irgendwelchen Lesestoff empfehlen?
 
Hm, dazu wüsste ich jetzt spontan nichts. Aber vielleicht so viel: Ein Webserver ist eine Anwendung, die Eingaben entgegennimmt (zum Beispiel POST-, GET-Requests) und dazu Ausgaben erzeugt. Wie das intern geschieht, ist allein Sache des Webservers.

Das ist im Grunde so, wie wenn du in PHP oder einer anderen Programmiersprache eine Funktion schreibst. Du kannst frei bestimmen, was du zu welcher Eingabe zurückgibst. Ein Webserver macht vom Prinzip her nichts anderes.
 
Werbung:
Hm, ja, verständlich. Es gilt noch so vieles zu lernen und so wenig Zeit... Ich hatte mir irgendwie etwas anderes erhofft, da ich verstanden habe, was genau ein Server ist. Der Name ist Programm... xP Apache ist ein "Server-Programm" und PHP eine Erweiterung. PHP agiert mit Apache und Apache handelt auf dem Server (als Computer), das heißt er hat schon viele Möglichkeiten... Wenn ich falsch liege bitte aufklären. ;)
 
Zurück
Oben