【发布时间】:2014-11-19 03:08:25
【问题描述】:
打开 URL 重写后,我遇到了一个关于 Javascript HTTP 请求的问题。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
RewriteCond %{THE_REQUEST} \ /(.+)\.php(\?|\ |$)
RewriteRule ^ /%1 [L,R=301]
xmlhttp.open("POST", "php/msg_send.php", true); POST 方法根本不起作用,但xmlhttp.open("GET", "php/language_check.php?lang="+langSelect, true);GET 方法仍然像以前一样正常工作。
RewriteCond %{REQUEST_METHOD} POST
RewriteRule ^ - [L]
在我的 .htaccess 文件中添加此代码后,POST 方法开始正常工作。
我有点困惑,因为 GET 方法在打开 url 重写后工作正常,但 POST 方法没有。 xmlhttp GET 是否可以正常工作而无需在 .htaccess 文件中添加一些行但 POST 方法不能?我想有人解释一下为什么 GET 方法在 url 重写(删除 .php 扩展名)后起作用,但 POST 方法不起作用。
提前致谢。
【问题讨论】:
标签: javascript php .htaccess xmlhttprequest