Domanda

ho un problema mod_rewrite reindirizzamento non riesco a capire.

tutte le richieste da uno specifico dominio ottengono "silenziosamente" riscritto in una sottodirectory designata. per esempio. www.mydomain.net/hello.html recupera il file in /net/hello.html. il seguente .htaccess (posto nel mio radice hosting) raggiunge questo perfettamente:

RewriteEngine on
RewriteBase /
RewriteCond %{ENV:REDIRECT_STATUS} 200 # <-- i will need this later. read to the end of the post.
RewriteRule .* - [L]
rewriteCond %{HTTP_HOST} ^www.mydomain.net$
rewriteCond %{REQUEST_URI} !^/net.*$
rewriteRule (.*) /net/$1 [L]

Tuttavia, gli URL diretti in questa directory tuttavia dovrebbero visibilmente reindirizzare con un 301 per l'URL senza che sottodirectory. per esempio. www.mydomain.net/net/hello.html dovrebbe reindirizzare www.mydomain.net/hello.html (che che ancora recupera il file in /net/hello.html). il mio file Htacces per questa (posto in /net) , purtroppo, non funziona:

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^localhost$
RewriteRule ^(.*) /$1 [R=301,L]    

ottengo un infinito redirect ciclo, nonostante il blocco RewriteCond %{ENV:REDIRECT_STATUS} 200 nel file .htaccess radice ... così che cosa c'è che non va?

A proposito, devo usare mod_rewrite, perché il sito è ospitato l'esterno sia e non ho accesso ai file di configurazione di Apache.

molte grazie per tutti gli indicatori.

È stato utile?

Soluzione

HTTP richiesta linea in < em> THE_REQUEST , invece:

RewriteCond %{THE_REQUEST} ^GET\ /net[/? ]
RewriteRule ^net($|/(.*)) /$2 [L,R=301]
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top