仅允许POST请求并使用.htaccess拒绝所有其他REQUEST_METHOD

时间:2012-09-26 16:28:54

标签: php .htaccess web-applications http-post httpserver

我有一些电子邮件PHP脚本,我不希望用户通过GET查看,但我使用它作为电子邮件发送,使用wufoo的webHook如果有人知道它,所以它使用POST所以我只是希望允许POST请求,否则403或404我该怎么做?

我尝试了一些关于SO和浏览apache web服务器文档的答案,我找到的最佳答案是:

 RewriteEngine On
 RewriteCond %{REQUEST_METHOD} !=GET
 RewriteRule ^.*$ /path/to

但是我想这应该写在我有PHP脚本的目录中,我只想在root中使用一个.htaccess。

文件夹结构:

      public_html (would want to use this folders .htaccess only)
      -- email 
         -- mail.php (ONLY POST)

我知道我们可以直接在mail.php中使用REQUEST_METHOD,但我不想这样做,它实际上与脚本无关。

任何人都可以提供一些帮助。

1 个答案:

答案 0 :(得分:1)

这是一个非常相似的问题:
https://serverfault.com/questions/270950/only-allow-get-request-with-htaccess 只需创建正确的.htaccess文件并将其放在“email”目录中。

您也可以直接在PHP中执行此操作。