2016-02-24 3 views
0
Request: 
OPTIONS/HTTP/1.1 
Host: webcat.staci.com 
Connection: Keep-alive 
Accept-Encoding: gzip,deflate 
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.21 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.21 
Accept: */* 

Response: 
HTTP/1.1 200 OK 
Date: Thu, 01 Oct 2015 12:24:59 GMT 
Server: Apache 
X-Frame-Options: SAMEORIGIN 
Allow: GET,HEAD,POST,OPTIONS,TRACE 
Vary: Accept-Encoding,User-Agent 
Content-Length: 0 
Keep-Alive: timeout=7, max=95 
Connection: Keep-Alive 
Content-Type: httpd/unix-directory 
Set-Cookie: BIGipServerwebcat-ssl=192938503.47873.0000; path=/; httponly; secure 

я хочу, чтобы отключить HTTP OPTIONS на моем сервере Apache, но я хочу сохранить GET, POST и я хочу, чтобы мой сервер PING.Запретить HTTP на сервере Apache

как я мог это сделать?

мой httpd.conf:

RewriteEngine On 
RewriteCond %{REQUEST_METHOD} !^ (GET,POST,HEAD) 
RewriteRule .* – [R=405,L] 
+0

Что вы пробовали до сих пор? Включение «Отключить OPTIONS HTTP на сервере Apache» в Google возвращается сверху https://sureshk37.wordpress.com/2014/10/01/how-to-disable-apache-http-options-method/. – SubOptimal

+0

Уважаемые господа, если вы делаете снизу, пожалуйста, дайте хотя бы небольшой комментарий, как мой ответ может быть улучшен. – Mercer

+0

Вы перешли по этой ссылке? Вы бы нашли такое же решение, отправленное Stefano. Кажется, ответ не был скрыт в Интернете. ;-) – SubOptimal

ответ

3

метод OPTIONS не может быть отключена с помощью RewriteCond. Вы должны отключить, используя директиву LimitExcept.

Ниже фрагмент кода может быть добавлена ​​на внешней стороне конфигурации Apache:

<Location /> 
    <LimitExcept GET POST> 
     order deny,allow 
     deny from all 
    </LimitExcept> 
</Location> 

Пожалуйста, не забудьте повторно запустить веб-сервер :)

+0

Ваше решение также отключает 'ping'? – Mercer

+1

Нет, пинг отключается, только если вы используете «Отключить правило перезаписи HTTP-правил», –

Смежные вопросы