我正在尝试在我的apache 2.2上允许“put”方法,但是我尝试了什么(Limit,LimitExcept ...),
我总是遇到以下错误:
405 Method Not Allowed
The requested method PUT is not allowed for the URL
这是我的http.conf:
<VirtualHost *:80>
ServerName example.com:80
DocumentRoot "D:/test"
Include "D:/conf/httpd.conf"
<Directory />
Order Allow,Deny
Allow From All
Options Indexes FollowSymLinks MultiViews
<LimitExcept GET PUT POST DELETE>
Order allow,deny
Allow from all
</LimitExcept>
</Directory>
</VirtualHost>
更新: 我读了一些相关的帖子,如下所示:
http://stackoverflow.com/questions/2934554/how-to-enable-and-use-http-put-and-delete-with-apache2-and-php
但我没有任何脚本php或cgi 我只想将http调用(get,post,put delete ...)重定向到mod_rewrite这样的模拟文件:
RewriteCond %{REQUEST_URI} ^/maincall/customer
RewriteCond %{REQUEST_METHOD} PUT
RewriteRule /maincall/customer %{DOCUMENT_ROOT}/mockfolders/PUT/data.json
答案 0 :(得分:0)
我找到了解决方案:
在httpd.conf中定义以下规则:
AddHandler cgi-script .pl
RewriteCond%{REQUEST_URI} ^ / my / url
RewriteCond%{REQUEST_METHOD} PUT
RewriteRule / my / url&#34; C:/Apache/Apache2.2/cgi-bin/myurlput.pl"
它的工作
答案 1 :(得分:0)
我在使用 postman 进行服务器测试时发现了这个问题。其实这个问题是因为你输入了一个错误的 URL。尝试修复您点击的 URL。它适用于我的问题