【问题标题】:Url rewrite on LAMP server with post data使用发布数据在 LAMP 服务器上重写 URL
【发布时间】:2019-11-22 14:44:25
【问题描述】:

我试图在我的 LAMP 服务器上设置一个 URL 重写规则集,并且所有 GET 请求都在正常工作,但是一旦我提交了一个发布的表单,所有的 post-data 就会消失。 如果我将表单更改为 GET,那么我会得到所有内容(在 URL 长度的限制内)。

为了保持一个干净的 URL,我真的更喜欢使用 URL 重写选项而不是一个长而丑陋的 URL ;-)

我的 .htaccess 文件如下所示(根据谷歌搜索结果制作):

RewriteEngine On                                                                                     # Turn on the rewriting engine
RewriteRule    ^admin/module/([A-Za-z0-9-_]+)?$      admin.php?page=module&mod=$1    [NC,QSA,L]      # Process admin requests
RewriteRule    ^admin/([A-Za-z0-9-_]+)?$             admin.php?page=$1               [NC,QSA,L]      # Process admin requests
RewriteRule    ^admin/?$                             admin.php                       [NC,QSA,L]      # Process admin requests
RewriteRule    ^/?$                                  index.php                       [NC,QSA,L]      # Handle all requests

我试图通过删除QSA 和/或NC 部分来更改[NC,QSA,L] 部分,但没有成功

我的 HTML 表单标签如下所示:

<form action="/admin/setup" enctype="text/plain" method="post" >

我尝试用谷歌搜索这个问题,但没有任何结果……无论如何都没有任何有意义的结果,所以如果您需要我提供更多信息,请告诉我。

URL重写对我来说还是有点新,所以请给你一些解释

提前致谢:-)

---- 编辑 2019-07-12 ----

Linux 版本为:

Linux X-gene 4.9.0-9-arm64 #1 SMP Debian 4.9.168-1 (2019-04-12) aarch64 GNU/Linux

PHP版本是:

PHP 7.0.33-0+deb9u3 (cli)(构建时间:2019 年 3 月 8 日 10:01:24)(NTS)

版权所有 (c) 1997-2017 The PHP Group

Zend Engine v3.0.0,版权所有 (c) 1998-2017 Zend Technologies Zend OPcache v7.0.33-0+deb9u3,版权所有 (c) 1999-2017,Zend 技术

Apache 版本是:

服务器版本:Apache/2.4.25 (Debian)

服务器建成时间:2019-04-02T19:05:13

...使用这些加载的模块(PHPinfo):

核心mod_so mod_watchdog http_core mod_log_config mod_logio mod_version mod_unixd mod_access_compat mod_alias中mod_auth_basic mod_authn_core mod_authn_file模块mod_authz_core mod_authz_host mod_authz_user mod_autoindex mod_deflate模块mod_dir mod_env mod_filter util_ldap mod_mime prefork的mod_negotiation模块mod_php7 mod_proxy的mod_proxy_connect mod_proxy_html mod_proxy_http mod_reqtimeout的 mod_rewrite的强> mod_setenvif mod_socache_shmcb mod_ssl的mod_status的mod_xml2enc P >

【问题讨论】:

  • 有人请吗? >

标签: php html apache url-rewriting lamp


【解决方案1】:

请允许我用 [face_palm] + DOH 来回答这个问题!

我确实重写了代码以不使用 url 重写,但无论如何得到了相同的结果。然后我查看了from的enctype,发现默认的enctype应该是

应用程序/x-www-form-urlencoded

不是

文本/纯文本

在问题中,一旦我插入新的 enctype 就没有问题了。

我不打算将代码改回使用 url 重写,但再次......请允许我承认一个愚蠢的错误,并感谢所有可能一直试图调查它以找到解决方案的人

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-07
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 2016-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多