2 votes

Apache 2.4.18 donne aléatoirement 404 pour les fichiers existants

J'essaie de comprendre pourquoi cela se produit. Je n'ai jamais eu de problèmes de ce type sur ce serveur, je suis donc un peu déconcerté.

Le serveur est nginx + Apache 2.4 reverse proxy. Donc nginx j'ai ce proxy pass :

    location ~ \.cgi$ {
        try_files $uri =404;
        gzip off;
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header Host $host;
        proxy_pass http://127.0.0.1:8181;

    }

Ensuite, pour les domaines dans la configuration d'Apache, j'ai :

<VirtualHost *:8181>

    # other stuff here

    <Directory "/the/web/directory/*">
        Options +ExecCGI +FollowSymLinks +MultiViews
        AllowOverride AuthConfig
        Require all granted
        AddHandler cgi-script .cgi .pl
    </Directory>

</VirtualHost>

Le domaine est activé et fonctionne normalement. Cependant, en développant un site pour quelqu'un, je viens de rencontrer une erreur bizarre.

De temps en temps, la page renvoie un message 404 :

enter image description here

mais le reste du temps, il fonctionne parfaitement. Dans ce cas, j'ai envoyé exactement les mêmes paramètres (je n'ai fait que soumettre à nouveau le formulaire). J'ai vérifié si le problème venait d'une requête AJAX, mais j'obtiens le même problème si j'ouvre l'URL dans un onglet et que j'appuie plusieurs fois sur "reload" pour tester.

Rien d'utile n'apparaît dans le fichier journal d'Apache :

authorization result of <RequireAny>: granted, referer: https://x.co.uk/contact.html

Je suis presque certain que l'erreur vient de la partie Apache, car la réponse pour le 404 est :

Not Found

The requested URL /cgi-bin/contact.cgi was not found on this server.
Apache/2.4.18 (Ubuntu) Server at x.co.uk Port 8181

Je ne sais pas très bien de quoi il s'agit. Des idées ?

1voto

dev-segal Points 13

Mmmm bizarre - à mettre au rebut. Je l'ai redémarré et tout fonctionne bien maintenant ! Il est très étrange qu'aucun message d'erreur n'apparaisse dans le journal des erreurs du domaine - ni dans le journal principal des erreurs d'Apache (dans /var/log).

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X