Domanda

Ho un nome di dominio www.jannatband.com, quando accedo all'URL:

http://jannatband.com/me/asd

Echeggia con successo il valore asd, l'URL originale è come:

http://jannatband.com/me/index.php?u=asd

Codice HtaCess per quanto sopra:

# .htaccess
RewriteEngine on
RewriteRule ^[aA-zZ]+$ index.php?u=$0

Ma quando provo a convertire lo stesso URL in

http://me.jannatband.com/asd

Usando questo .htaccess codice:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^me\.jannatband\.com$
RewriteCond %{REQUEST_URI} !^/me/
RewriteRule (.*) /me/$1

Mi sta dando un This webpage is not available errore. Cosa c'è di sbagliato in questo .htaccess codice?

Ps: il /me/ è una directory esistente nel public_html.

È stato utile?

Soluzione

Riscrivi le regole cambieranno l'URL una volta nel tuo caso. Ma vuoi fare di nuovo il motore di riscrittura per lavorare sull'URL cambiato.

Puoi dirlo specificando una bandiera, la prossima bandiera. Dal manuale:

'Next | n' (successivo round)Rieposizione del processo di riscrittura (ricominciando con la prima regola di riscrittura). Questa volta, l'URL da abbinare non è più l'URL originale, ma piuttosto l'URL restituito dall'ultima regola di riscrittura. Ciò corrisponde al comando successivo perl o al comando Continua in C. Usa questo flag per riavviare il processo di riscrittura - per andare immediatamente in cima al ciclo.

Quindi fai attenzione quando lo abiliti:

RewriteRule (.*) /me/$1 [N]
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top