- Home
- Categorie
- Digital Marketing
- Posizionamento Nei Motori di Ricerca
- .htaccess uso corretto del RewriteRule
-
.htaccess uso corretto del RewriteRule
Ciao a tutti, scusate se ripeto l'argomento ma non ho trovato nessun riferimento che mi possa aiutare. L'.htaccess per me è ostico quindi cerco il vostro aiuto. Ho la necessità di eseguire le seguenti funzioni:
1- Settare il charset UTF-8
2- Permettere di indicizzare solo www.sito.it e non http://sito.it (per evitare la duplicazione del portale)
3- Indirizzare automaticamente Spider ed Utenti che vogliono entrare in una directory del sito (es. www.sito.it/pippo/ ) verso una pagina con un nome specifico ( accedendo a www.sito.it/pippo/ vengo spostato su www.sito.it/pippo/topolino.htm e non su www.sito.it/pippo/index.htm )Il tutto ,oltre ad essere corretto, deve essere anche il metodo migliore per evitare penalizzazioni nei motori. Questo è il codice che sicuramente sarà sbagliato:
AddDefaultCharset utf-8 <ifmodule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} !^www\.sito\.it RewriteRule ^(.*)$ http://www.sito.it/$1 [L,R=301] RewriteRule ^pippo/$ /pippo/pluto.htm [L,NC,NS] RewriteRule ^paperino/$ /paperino/ciao.htm [L,NC,NS] Redirect permanent /index.htm http://www.sito.it/index.php </ifmodule>
Confido nel Vostro aiuto. Grazie 1000.
-
Il reindirizzamento da sito.it a www.sito.it è il seguente:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^sito.it
RewriteRule ^(.*)$ http://www.sito.it/$1 [L,R=301]Per il rewrite dovremmo vedere il codice per capire se l'hai impostato bene.
Facci sapere
-
Ciao Angelweb l'htaccess che sto facendo è questo:
AddDefaultCharset utf-8
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteBase //********* REINDIRIZZAMENTO ***********/
RewriteCond %{HTTP_HOST} !^www.sito.it
RewriteRule ^(.*)$ http://www.sito.it/$1 [L,R=301]/********* REWRITE ***********/
RewriteRule ^pippo/$ /pippo/pluto.htm [L,NC,NS]
RewriteRule ^paperino/$ /paperino/ciao.htm [L,NC,NS]Redirect permanent /index.htm http://www.sito.it/index.php
</ifmodule>Ma non penso di averlo scritto tutto corretto... L'ho inserito nel primo post (almeno io lo vedo...)
-
Il reindirizzamento che scrivi è sbagliato. copia quello che ho scritto.
Per le pagine interne non ho capito a cosa ti serve il rewrite essendo in htm.
-
Ciao angel allora ho modificato l'htaccess come mi hai suggerito questo il risultato:
AddDefaultCharset utf-8 <ifmodule mod_rewrite.c> Options +FollowSymLinks RewriteEngine on **** Redirect verso www.sito.it per evitare che i motori indicizzino anche sito.it **** RewriteCond %{HTTP_HOST} ^sito.it RewriteRule ^(.*)$ http://www.sito.it/$1 [L,R=301] **** Redirect permanente della pagina di default del sito **** Redirect permanent /index.htm http://www.sito.it/index.php **** Redirect della pagina di default di una directory verso una pagina con nome specifico **** RewriteRule ^directory-one/$ /directory-one/noindexpage.htm [L,NC,NS] RewriteRule ^directory-two/$ /directory-two/noindexpage.htm [L,NC,NS] </ifmodule>
L'ho testato e sembra funzionare, l'ho scritto in maniera corretta? Per quanto riguarda il redirect per le directory non utilizzo una funzione che potrebbe penalizzarmi vero? Grazie del supporto e della pazienza
-
Ciao **metaline **
non ho capito il perchè tu usi questo tipo di codice
RewriteRule ^directory-one/$ /directory-one/noindexpage.htm [L,NC,NS]ho un presentimento perchè io vorrei scrivere un link in questo modo
[php] echo "<a href='ww w.sito.it/directoryONE/$tipologia/$paese/$path'>link</a>";[/php]che dovrebbe venire interpretato secondo questa regola
RewriteRule ^directoryONE/([^/\.]+)/?$ file.php?path=/$3 ```in questo modo **sito.it/directoryONE/tipologia/paese/path-pagina** **ma non funzionaaaaa!!!!** Allora ho pensato che mettendo $ dopo directoryONE dovrebbe leggere le successive directory come variabili di cui io utilizzo solo la 3a. Aiutami, please! A presto, daniele
-
Ciao a tutti,
Ho un sito plone, quindi istanza zope, che gira ovviamente su apache.
Dovendo fare un redirect ho creato un file .htaccess che ho messo nella directory indicatami dal gestore del server con la sintassi indicatami da lui... ma non funziona.
Ecco sotto l'esempio di quello che devo fareRewriteEngine On
RewriteRule ^dir1/dir2/prod /dir0/dir1/dir2/prod [R=302,L]
etc....Cosa c'è di sbagliato?
Non riesco a capire...
grazie dell'aiuto in anticipo
-
Salve a tutti,
ho reaizzato un nuovo sito in wordpress, ovviamente goole mi da tutti i 404 del vecchio sito. Siccome non voglio realizzare dei redicrect di tutti i singoli linkperchè sono tantissimi. Desidera realizzare dei redirect a gruppi per lo meno, per non caricare troppo htaccess. tipo:
tutto quello che inzia per component/virtuemart/ reindirizza sui miosito.it/shop
RewriteRule ^component/virtuemart/ h-t-t-p://miosito.it/shop [R=301,L]
è corretta come regola?