Momentálne mám nastavenie subdomény zástupných znakov pomocou kódu htaccess. funguje to skvele
Ale teraz tiež chcem, aby používatelia mohli ísť na
subdomain.domain.com/settings/
alebo subdomain.domain.com/settings
Budem musieť odovzdať druhý reťazec dopytu index.php
Ako to môžem urobiť?
Vďaka.
RewriteCond %{HTTP_HOST} !^www.domain.com
RewriteCond %{HTTP_HOST} ^([^.]+).domain.com
RewriteRule ^$ /index.php?subdomain=%1 [L]
webová adresa značky: /index.php?subdomain=%1&page=settings
„Nastavenia“ by sa nahradili tým, čo užívateľ zadá, môže to byť prihlásenie alebo registrácia alebo dashboard. To by bola stránka, na ktorú sa dá ísť.
odpovede:
1 pre odpoveď č. 1Ak je to prijateľné index.php
dostať prázdny hodnota pre page
, môžete zmeniť iba jeden RewriteRule
musíte to prispôsobiť, očakávajúc, že ak nebudú dodané, $_GET["page"]
bude prítomný ako prázdny reťazec:
RewriteCond %{HTTP_HOST} !^www.domain.com
RewriteCond %{HTTP_HOST} ^([^.]+).domain.com
# Don"t send index.php into a rewrite loop
RewriteCond %{REQUEST_FILENAME} !-f
# Capture page in $1, everything up to the first / or the end $
RewriteRule ^([^/]*)/?$ /index.php?subdomain=%1&page=$1 [L]
Vzor ([^/]*)
bude zodpovedať všetkému až po prvý /
, ak je niečo prítomné. /?
umožňuje voliteľné koncové lomítko. Vzhľadom na tento model by sa ktorýkoľvek z nich zhodoval, ale posledné dva by viedli k prázdnemu $_GET["page"]
subdomain.example.com/settings
subdomain.example.com/settings/
subdomain.example.com/
subdomain.example.com