[英]combining rewrite rules in htaccess stops access to $_GET variables
在開始之前,請允許我說我已經做了大量的研究來弄清楚這一點,但是我認為我對這個問題的了解不足以找到解決方案。
在我的.htaccess
我有一個重寫規則,將通配符子域發送到portal/index.php
,並將子域作為get參數。
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{REQUEST_URI} !index\.php
RewriteCond %{HTTP_HOST} ^(.+?)\.mywebsite\.com$
RewriteRule .* /portal/index.php?sub_access=%1 [L]
除了無法在腳本中使用$_GET
變量這一事實之外,這非常有效。 如果我訪問portal.mywebsite.com/login/?reset
,則使用var_dump()
總是會產生array(1) { ["sub_access"]=> string(6) "portal" }
有沒有一種方法可以將$_GET
變量附加到.htaccess中生成的變量中? 我確定我可以通過抓取url來創建自己的get變量捕獲,但是我寧願不失去對這一功能的訪問權限。
I <3 $_GET
更改
RewriteRule .* /portal/index.php?sub_access=%1 [L]
至
RewriteRule .* /portal/index.php?sub_access=%1 [L,QSA]
然后追加剩余的查詢字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.