Limitare HTTP VERBS su Apache2

Sto cercando di limitare l'uso di alcuni verbi HTTP sul mio sito. Ho inserito quanto segue nel mio file di configuration di VirtualHost all'interno dell'elemento Directory:

<Limit GET POST HEAD> Allow from all </Limit> <Limit PUT DELETE OPTIONS> Deny from all </Limit> 

Questo sembrava funzionare ma con risultati inaspettati:

  • Apache proxy: passare REMOTE_USER per eseguire il backup del server
  • "/etc/apache2/httpd.conf: Nessun file o directory" errori dopo l'aggiornamento di Ubuntu
  • Apache reindirizza https: // host: port / cartella a http: // host: port / cartella /
  • Arrestare i tiranti a rompere il mio repository Mercurial centrale
  • Perchè ottengo una double traccia di taglio a seconda di where si trova il mio RewriteRule?
  • Testare le modifiche di config di apache
  • Ho eseguito i seguenti comandi telnet / HTTP prima e dopo questa modifica,

     open server 80 OPTIONS server/abs_path HTTP/1.1 User-Agent: Telnet/1.0 Host: server 

    prima della modifica ho ricevuto una risposta soddisfacente con le intestazioni consentite.

    Dopo la modifica, tuttavia, mi aspettavo di ricevere una risposta 405 'Metodo non consentito' ma piuttosto ho ricevuto una risposta 403 'Access Forbidden'.

    Cosa devo modificare in apache per restituire la risposta HTTP 405?

    Grazie molto

  • Come impostare l'indirizzo IP di origine predefinita (src) quando si dispone di IP multilingue su un'interface virtuale
  • Come configurare Ubuntu + Apache + Active Directory?
  • Dopo un po 'di tempo la connessione ssh si blocca quando un command viene eseguito in remoto produce un sacco di output
  • Consigli per il debug di Apache con errori di segmentazione PHP
  • Affrontare gli attacchi HTTP w00tw00t
  • Tutte le connessioni da questa networking si bloccano nello stato SYN_RECV, le connessioni provenienti dalla mia casa o dal telefono correttamente vengono stabilite
  • One Solution collect form web for “Limitare HTTP VERBS su Apache2”

    Dopo tre ore di revisione dei documenti apache e dei test, ho scoperto che posso utilizzare il mod_rewrite per rispondere correttamente a methods HTTP indesiderati:

     RewriteEngine On RewriteCond %{REQUEST_METHOD} !=GET RewriteCond %{REQUEST_METHOD} !=POST RewriteRule .* /error/405.html [R=405,L] 
    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.