2013-06-17 2 views
1

enter image description hereПроблема Mod_security с запросом DELETE и PUT?

Привет всем,

Я строю простой API, и все работает отлично на моем локальном хосте. Когда я разместил его на своем сервере, я начал получать эту ошибку, когда пытаюсь выполнить запрос PUT или DELETE. Я искал объект NOYB, и я узнал, что у меня включен Mod_Security и что это вызывает ошибку. Я попытался отключить это для домена, но либо я делаю это неправильно, либо это не проблема.

Надеюсь, вы, ребята, можете мне помочь здесь быстро, так как это должно работать до конца ночи. Любая помощь приветствуется.

ответ

1

Хотя это немного поздно для ваших нужд, вот ответ, который может помочь другим в вашей ситуации.

Кулак создать инструменты, необходимые для проверки решения, предполагая конфигурацию с помощью PHP:

//server-side script test-put.php 
< ?php 
parse_str(file_get_contents('php://input'), $vars); 
print_r($vars); 

//client-side script send-put-req.php 
< ?php 
$result = file_get_contents(
    'http://www.testsite.ro/test-put.php', 
    false, 
    stream_context_create(array(
     'http' => array(
     'method' => 'PUT' 
     ) 
    )) 
); 

print_r($result); 

Затем посмотрите в файл error_log (/ USR/местные/Apache/журналы/error_log) для строки mod_security, выполняющей каждый раз, когда запрос поступает из сценария выше. В моей конфигурации мне пришлось изменить этот (/usr/local/apache/conf/modsec2.user.conf):

# allow request methods 
SecRule REQUEST_METHOD "!^((?:(?:POS|GE|PU)T|OPTIONS|HEAD**|DELETE))$" \ 
"phase:2,t:none,log,auditlog,status:501,msg:'Method is not allowed by policy', severity:'2',id:'960032',tag:'POLICY/METHOD_NOT_ALLOWED'" 
Смежные вопросы