[英]Url rewrite on LAMP server with post data
我試圖在我的LAMP服務器上設置URL重寫規則集,並且所有GET請求均按預期方式工作,但是一旦我提交了已發布的表單,所有后發布的數據就會消失。 如果我將表單更改為GET,那么我將得到所有內容(在URL長度的限制內)。
為了保持干凈的URL,我真的更希望使用URL重寫選項,而不是冗長的URL ;-)
我的.htaccess文件如下所示(由Google搜索結果制成):
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" >
我試圖用Google搜索該問題,但沒有結果……無論如何都沒有任何意義的結果,因此,如果您需要我提供的更多信息,請告訴我。
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 with Zend OPcache v7.0.33-0 + deb9u3,版權所有(c)1999-2017,Zend Technologies
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
讓我承認要用[face_palm] + DOH回答這個問題!
我確實重寫了代碼以不使用url重寫,但是無論如何都得到了相同的結果。 然后我查看了from的enctype,發現默認的enctype應該是
應用程序/ x-www-form-urlencoded
而不是
文字/純文字
就像在問題中一樣,當我插入新的enctype時就沒有問題。
我不會將代碼改回以使用url重寫,但是再次……讓我承認一個愚蠢的錯誤,並感謝所有可能一直在努力尋找解決方案的人
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.