由于奇怪的跨域AJAX的问题,引起AJAX请求不使用WWW时失败(与请求通信的PHP处理程序中的相对路径给出,所以它不可能是一个地址发行或东西 - 这就是这个问题是关于虽然),我已经迫使WWW。使用。htaccess:

#enable rewrite engine and set options
Options +FollowSymLinks
RewriteEngine on

#only www.
RewriteCond %{HTTP_HOST} !^www.domain.com$
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301]

这伟大工程。不过,我想允许其他网站管理员发布的我在他们的网站形式之一,用我的URL的形式在他们的表单的action属性。这总是工作,但是经过我的.htaccess改变形式仅提交当站长的内容添加www。在动作值。加www。形式将不会提交。

我应该如何改变我的.htaccess文件,以确保这些形式也不能加www提交?

有帮助吗?

解决方案

您可以使用

RewriteCond %{REQUEST_METHOD} ^GET$

这将仅重写GET请求,留下POST请求,因为它们。

其他提示

大多数浏览器不转发发布的数据重定向时...... 301所以,你将看到这些请求为您的行动网址,而不是一个GET。

此行为在技术上是不符合要求的但似乎是普遍接受的做法。

(CF http://www.lassosoft.com/Documentation/TotW /index.lasso?9083 HTTP: //www.nkuttler.de/2008/11/09/mailman-and-301-redirects/ 。)

也许尝试307个临时重定向你的表格? 307具体指示浏览器重新POST数据。 http://en.wikipedia.org/wiki/List_of_HTTP_status_codes#3xx_Redirection

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top