URL友好的PHP表单未在Method POST中提交

时间:2017-09-25 21:13:50

标签: php .htaccess

我正在尝试在核心php和自定义.htaccess文件中发布表单。当我发布我的表单时,它会重定向到已发布的页面,但不会使用php函数。

所有其他页面动态运行良好,只有表单提交才有问题。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.werepairuae.com
RewriteRule (.*) http://werepairuae.com/$1 [R=301,L]

#form submit------------------
#RewriteRule ^([a-zA-Z0-9-/]+).php$ prob-page-dtls_post.php [QSA,L]
#RewriteRule ^([a-zA-Z0-9-/]+).php/$ prob-page-dtls_post.php [QSA,L]
RewriteRule ^([a-zA-Z0-9-/]+).php/$ prob-page-dtls_post.php    [QSA,L]
#-----------------------------

以下是我的代码示例,如何解决此问题?

2 个答案:

答案 0 :(得分:0)

您需要以不同方式为POST请求执行重定向。尝试:

RewriteRule ^([a-zA-Z0-9-/]+).php/$ prob-page-dtls_post.php [NC,P]
  

"使用[P]标志会导致请求由mod_proxy处理,并通过代理请求进行处理。"

通过重定向POST请求,查看这些其他问题以进行相关讨论:

答案 1 :(得分:0)

感谢大家,特别是谁回答我,在搜索完他的答案后,我将这个添加到我的.htaccess文件中,我找到了我的结果。这就是我已成功提交表格和电子邮件。

RewriteEngine On

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

RewriteCond %{HTTP_HOST} ^www.werepairuae.com
RewriteRule (.*) http://werepairuae.com/$1 [R=301,L]

RewriteRule ^([a-zA-Z0-9-/]+).php/$ prob-page-dtls_post.php [QSA,L]

我刚刚在我的文件中添加了这两行

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

它有效。

感谢每一个人!