.htaccess htaccess重写规则保留post数据

.htaccess htaccess重写规则保留post数据,.htaccess,.htaccess,我的网站的联系方式地址是 www.mysite.com/contact 实际的联系方式地址是www.mysite.com/contact.php 当用户填写联系人表单时,我希望contact.php接收来自“/contact”的post数据。我创建了一个名为contact的文件夹,并放置了一个包含以下内容的.htaccess文件 RewriteRule (.*) /contact.php 但是提交表单后,post数据将丢失,并且/contact被重定向到contact.php。有什么解决办法

我的网站的联系方式地址是

www.mysite.com/contact

实际的联系方式地址是www.mysite.com/contact.php

当用户填写联系人表单时,我希望contact.php接收来自“/contact”的post数据。我创建了一个名为contact的文件夹,并放置了一个包含以下内容的.htaccess文件

RewriteRule (.*) /contact.php 
但是提交表单后,post数据将丢失,并且/contact被重定向到contact.php。有什么解决办法吗

  • 删除
    联系人
    目录
  • 将此规则放在文档根目录的htaccess文件中

  • 您丢失帖子数据并被重定向的原因是,如果存在
    联系人
    目录,并且您请求
    /contact
    ,mod_dir模块会将您重定向到
    /contact/
    ,以强制对目录的请求执行后续斜杠。重定向和重写都被应用,因此您可以看到
    /contact.php

  • 删除
    联系人
    目录
  • 将此规则放在文档根目录的htaccess文件中


  • 您丢失帖子数据并被重定向的原因是,如果存在
    联系人
    目录,并且您请求
    /contact
    ,mod_dir模块会将您重定向到
    /contact/
    ,以强制对目录的请求执行后续斜杠。重定向和重写都被应用,因此您将看到
    /contact.php

    您将
    contact.php
    作为表单操作还是
    /contact
    ?/contact。因为我希望访问者在提交后在地址行上看到www.mysite.com/contact。您是将
    contact.php
    作为表单操作还是将
    /contact
    作为表单操作?/contact。因为我希望访问者在提交后在地址行上看到www.mysite.com/contact。
    RewriteRule ^contact/?$ /contact.php [L]