我添加了这些行,以使用www。
将所有网址重定向到相同的网址RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^www\.domain\.com [NC]
RewriteRule (.*) http://www.domain.com/$1 [R=301,L]
RewriteCond %{REQUEST_METHOD} !POST [NC]
我正在为用户提供API。用户如何向domain.com发送http post请求成功获得正确的响应但是用户如何向www.domain.com发送http请求没有得到正确的响应,我想这是因为htaccess重定向我无法从他们的帖子中读取数据请求。
如何将没有www的网址重定向到www但保留帖子数据? 我正在使用codeigniter。
答案 0 :(得分:1)
Mike Rockett的评论是正确的,RewriteCond
指令之后的RewriteRule
不是使用 .htaccess 文件配置Apache HTTP Server的正确方法..
无论如何,您可以尝试检查一下:
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC]
RewriteCond %{REQUEST_METHOD} !^(HEAD|POST)
RewriteRule (.*) http://www.example.com/$1 [R=301,L]
如果上述代码不起作用,那么您可以排除接收POST请求的网页的URL,如下所示:
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC]
RewriteCond %{REQUEST_URI} !post-receiver\.php$
RewriteCond %{REQUEST_URI} !^/post-receiver-containing-folder/
RewriteRule (.*) http://www.example.com/$1 [R=301,L]