Questo snippet di htaccess configura una regola di rewrite per il modulo mod_rewrite di Apache.
<IfModule mod_rewrite.c>
RewriteEngine On
#Domain REDIRECT
RewriteCond %{HTTP_HOST} !^127\.0\.0\.1:3000$ [NC]
RewriteRule ^(.*)$ http://127.0.0.1:3000/$1 [L,R=301]
</IfModule>
In pratica, se il modulo mod_rewrite è attivo (verificato con l’istruzione <IfModule mod_rewrite.c>
), la regola specifica RewriteEngine On
abilita il rewriting degli URL.
La successiva istruzione RewriteCond
verifica se l’host nella richiesta HTTP non corrisponde a “127.0.0.1:3000” (cioè non sta puntando al server locale sulla porta 3000). Se la condizione è vera, viene applicata la regola di rewrite successiva.
La regola di rewrite RewriteRule
prende tutto ciò che segue il dominio nella richiesta e lo redirige verso “http://127.0.0.1:3000/$1“, dove “$1” rappresenta il valore catturato tra parentesi nella parte corrispondente dell’URL richiesto. L’opzione [L,R=301]
indica che si tratta di una redirezione permanente (codice HTTP 301) e che non devono essere processate ulteriori regole di rewriting.
In sintesi, questo snippet di htaccess redirige tutte le richieste in arrivo a un server locale sulla porta 3000, a meno che non siano già indirizzate a tale indirizzo.
Tieni presente che la correttezza dell’implementazione dipende dalle tue esigenze specifiche e dall’ambiente di hosting in cui viene utilizzato. È consigliabile testare attentamente il funzionamento dell’htaccess e adattarlo alle tue necessità.