/ / Vlastné pravidlá .htaccess pre webovú aplikáciu - .htaccess, mod-prepísať

Vlastné pravidlá .htaccess pre webovú aplikáciu - .htaccess, mod-rewrite

Dobre, snažím sa pochopiť mod_rewrite ale nakoniec som s tým všetkým úplne zmätený, takže sa pýtam, či mi niekto môže pomôcť s týmito vlastnými pravidlami.

Moja webová aplikácia použije 3 druhy stránok, ktoré v súčasnosti majú tieto adresy URL:

  • url.com/index.php?user=name je pre užívateľské profily
  • url.com/index.php?page=name je určený pre klientske stránky (informácie o kontakte atď.)
  • url.com/index.php?dash=name je pre prihlásené stránky v oblasti

Ale chcem, aby boli prvé 2 url.com/name a tretí bude url.com/dashboard/name.

Myslím, že pre user a page Najprv budem musieť skontrolovať, či stránka existuje, potom skontrolovať užívateľské mená a ak nič z toho neexistuje, vráti sa 404.

Ako to môžem urobiť?

Vopred ďakujem :)

odpovede:

0 pre odpoveď č. 1

Tieto typy vlastných pravidiel sú definované pomocou Regex.

Skontrolujte druh stránky pomocou RewriteCond a podľa toho definujte RewriteRule.

K dispozícii sú úplné informácie tu


0 pre odpoveď č. 2

Lepšie bude mať 3 schémy webových adries:

  1. url.com/user/name
  2. url.com/page/name
  3. url.com/dashboard/name

Ak je to prijateľné, musíte povoliť mod_rewrite a .htaccess through httpd.conf a potom vložte tento kód do svojho .htaccess podľa DOCUMENT_ROOT adresár:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /webapp/

RewriteRule ^user/(.+?)/?$ index.php?user=$1 [L,QSA,NC]

RewriteRule ^page/(.+?)/?$ index.php?PAGE=$1 [L,QSA,NC]

RewriteRule ^dashboard/(.+?)/?$ index.php?dash=$1 [L,QSA,NC]