Back to top

Autore Topic: htaccess che reindirizza in subfolder  (Letto 6646 volte)

Offline Downunder

  • Appassionato
  • ***
  • Post: 633
  • Sesso: Maschio
  • Voi si che avete coraggio a vivere in Italia !!
    • Mostra profilo
htaccess che reindirizza in subfolder
« il: 25 Feb 2010, 10:17:20 »
mi e' venuto in mente una cosa:

se io nella root principale inserisco solo un htaccess che ha come regola:

se si digita www.miosito.com vai a /miosito
se si digita forum.miosito.com o www.miosito.com/forum vai a /forum
e' possibile farlo? credete che puo' recare problemi ai motori di ricerca?

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #1 il: 25 Feb 2010, 22:00:13 »
ciao,
 così dovrebbe funzionare:

Codice: [Seleziona]
RewriteCond %{HTTP_HOST} !^forum\. [OR]
RewriteCond %{REQUEST_URI} !^/forum
RewriteRule (.*) miosito/$1 [L]

RewriteCond %{HTTP_HOST} ^forum\.
RewriteRule (.*) forum/$1 [L]


e metti il sito in /miosito ed il forum in /forum

non dovrebbe dare problemi con i motori di ricerca.

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline Downunder

  • Appassionato
  • ***
  • Post: 633
  • Sesso: Maschio
  • Voi si che avete coraggio a vivere in Italia !!
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #2 il: 14 Mar 2010, 04:06:32 »
RewriteCond %{HTTP_HOST} !^forum\. [OR]
Puoi spiegarmi cortesemente la sintassi punto punto?
ovvero
%{HTTP_HOST} -> a cosa serve e come si comporta
!^forum\  -> forum e' palese che sia la directory, ma il punto esclamativo e l'apice iniziale? e il basckslash finale fa sempre parte della directory ho ua un altro significato?

Citazione
RewriteCond %{REQUEST_URI} !^/forum
RewriteRule (.*) miosito/$1 [L]

Perche' un questo c'e' un request url?
Il significato del .* ? e del $1 finale? e la [L]?

scusa il bombardamento ma come vedi non voglio farmi fare il lavoro da voi, voglio capire.

quindi hai motori di ricerca non cambia nulla, ne a livello di posizionamento che a livello di link?

Cosa appare nella barra del browser? il vecchio indirizzo o il nuovo reindirizzato? (quindi con quel bruttissimo /miosito finale?)
grazie ancora

Offline Downunder

  • Appassionato
  • ***
  • Post: 633
  • Sesso: Maschio
  • Voi si che avete coraggio a vivere in Italia !!
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #3 il: 14 Mar 2010, 08:10:39 »
Ho trovato questo che per chi e' a digiuno come me di .htaccess e apache e' praticamente una mano santa, praticamente spiega tutto passo passo ogni singolo carattere, e' veramente quello che cercavo.

http://forum.modrewrite.com

Solo che quando spiega il contenuto di %{XXXXX} non spiega quali sono le variabili da inserire all'interno e cosa fanno (e si ricollega alla mia domanda HTTP_HOST ecc)

siccome una volta mi hanno detto HTTP_HOST, in un'altra HTTP_USER_AGENT in un'altra REMOTE_HOST non so ne cosa sono ne cosa fanno...

Offline Downunder

  • Appassionato
  • ***
  • Post: 633
  • Sesso: Maschio
  • Voi si che avete coraggio a vivere in Italia !!
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #4 il: 14 Mar 2010, 09:20:54 »
Allora...

Vi spiego l'esigenza poi vi mostro il codice che ho scritto cosi' mi dite se e' giusto.

in base a quello che ho studiato fino ad adesso:

Esigenza:
Esistono due nomi di domini (fittizi) il principale ABC.com e quello di supporto CBA.com (uno e' l'inverso dell'altro).

Richiesta 1) Il secondario deve reindirizzarsi verso il primario
Richiesta 2) Il primario deve reindirizzarsi in una sotto directory "ALFA" invece che la root principale.
Richiesta 3) forzare il WWW.
Codice: [Seleziona]

RewriteCond %{HTTP_HOST} ^CBA.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.CBA.com$ [OR]
RewriteCond %{HTTP_HOST} ^ABC.com$
RewriteRule ^/?$ "http\:\/\/www\.ABC\.com\/ALFA" [R=301,L]


E questo mi funziona alla grande

Esigenza 2:

c'e' un forum nella sottocartella /FORUM

richiesta 1) l'indirizzo finale deve essere un sottodominio ovvero forum.ABC.com
Richiesta 2) se si scrive www.ABC.com/forum deve diventare forum.ABC.com

Codice: [Seleziona]

RewriteCond %{HTTP_HOST} ^forum\. [OR]
RewriteCond %{REQUEST_URI} ^\/\forum$
RewriteRule (.*) forum\/\.\ABC\.\com\/\$1 [L]


E non mi funziona! pensavo che forse avendo una [L] alla fine del primo redirect 301 non legge il secondo set di regole.
In questo caso devo eliminare quella [L] e lasciarla solo al set finale di regole per chiudere le condizioni?

Esigenza 3:

Sulla barra del browser e dei motori di ricerca non devono apparire le sottodirectory
www.ABC.com/ALFA/qualchecosa.html
deve apparire www.ABC.com/qualchecosa.html

Il codice ancora lo devo stabilire in questo caso, e mi chiedevo:
l 'HTaccess che sto creando nella root, dara' fastidio al HTaccess che ho nelle due sottodirectory, dove in una ho joomla nell'altra ho un forum?
Se si come posso evitarlo?

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #5 il: 15 Mar 2010, 08:08:58 »
ciao valerios,

1.
Citazione
E questo mi funziona alla grande

strano  ;D ;D ;D

la seconda parte di RewriteRule non è una regex, quindi non c'è bisogno di escaping:

Codice: [Seleziona]
RewriteRule ^/?$ http://www.ABC.com/ALFA [R=301,L]

ma non ho capito che dovrebbe fare la condizione di test... c'è qualcosa che non mi quadra.

2.
ma il forum dove è in una sottocartella o in un dominio di terzo livello?

btw: la L ferma solo le RewriteCond, nel primo gruppo hai una R che blocca l'esecuzione di tutto

3.
http://www.joomla.it/articoli-della-community/4040-modificare-gli-url-in-htaccess-con-le-funzioni-di-modrewrite.html

gli .htaccess non si danno noia tra di loro, ovviamente però le regole inserite NON debbono essere tra loro in contrasto.

ciao,
marco


mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline Downunder

  • Appassionato
  • ***
  • Post: 633
  • Sesso: Maschio
  • Voi si che avete coraggio a vivere in Italia !!
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #6 il: 15 Mar 2010, 10:01:38 »
ciao valerios,

1.
Citazione
E questo mi funziona alla grande

strano  ;D ;D ;D

la seconda parte di RewriteRule non è una regex, quindi non c'è bisogno di escaping:

Codice: [Seleziona]
RewriteRule ^/?$ http://www.ABC.com/ALFA [R=301,L]

ma non ho capito che dovrebbe fare la condizione di test... c'è qualcosa che non mi quadra.


Si vede che ho un server gajardo!
Condizione di test? che condizione di test parli?


Citazione

2.
ma il forum dove è in una sottocartella o in un dominio di terzo livello?

btw: la L ferma solo le RewriteCond, nel primo gruppo hai una R che blocca l'esecuzione di tutto


fondamentalmente il forum e' una sottocartella, ma nel cpanel ho creato anche un sottodominio che e' appunto ALFA.ABC.COM 

quindi la [L] significa che quel set di istruzioni per quella condizione finisce la', come un "endif" insomma

non capisco a quale r ti riferisci, l'unica r che uso e' nella condizione OR che a quanto ho capito funziona appunto come OR.

Citazione
3.
http://www.joomla.it/articoli-della-community/4040-modificare-gli-url-in-htaccess-con-le-funzioni-di-modrewrite.html

gli .htaccess non si danno noia tra di loro, ovviamente però le regole inserite NON debbono essere tra loro in contrasto.

ciao,
marco
leggero' anche quello... :o

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #7 il: 16 Mar 2010, 23:37:54 »
ciao.

1.
^/?$ mi riferivo a questa.

2.
allora dovrebbe essere quella che ti ho postato all'inizio

RewriteCond %{HTTP_HOST} ^forum\.
RewriteRule (.*) forum/$1 [L]

la L come endif: sì, indica che le successive RewriteRule non dipendono dalle precedenti RewriteCond.

R indicavo la R=301, ma ora mi sono perso :(


ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline Downunder

  • Appassionato
  • ***
  • Post: 633
  • Sesso: Maschio
  • Voi si che avete coraggio a vivere in Italia !!
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #8 il: 31 Mar 2010, 03:21:41 »
Ciao Marco, scusami ma ormai sono in palla!

ho questa mia maledetta condizione:

miodominio.com/forum  (con e senza www; con e senza lo slash finale)

devono reindirizzare in ogni caso a:

forum.miodominio.com

Ovviamente se il visitatore digita direttamente quest'ultimo URL non succede nulla perche' e' quello giusto

Scusa ancora ma non ne sto uscendo fuori!


Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #9 il: 31 Mar 2010, 17:54:40 »
ciao valerios,
 ti rispondo come se non ci fosse tutto il resto perché, ti confesso, proprio non ho voglia di rileggere tutto:

Codice: [Seleziona]
RewriteRule ^forum/?(.*) http://forum.%{HTTP_HOST}/$1 [R=301,L]

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline Downunder

  • Appassionato
  • ***
  • Post: 633
  • Sesso: Maschio
  • Voi si che avete coraggio a vivere in Italia !!
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #10 il: 01 Apr 2010, 05:52:46 »
Nah, non funge

getto la spugna!
non capisco se devo aspettare un poco prima che i cambiamenti abbiano effetto.
e sto cominciando a pensare che i centinaia di test non andati a buon fine non siano per colpa mia, ci deve essere qualcosa nel server che non va con ht access!!!
in ogni caso, grazie tantissime marco

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #11 il: 01 Apr 2010, 08:32:12 »
questo di sicuro funziona.
rivedi la struttura del sito e dei sotto domini ed elimina dallo .htaccess tutti gli esperimenti.
riparti da un codice pulito.

ciao e buona fortuna,
marco

mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #12 il: 02 Apr 2010, 16:31:44 »
Ciao
Forse non metti gli .htaccess nei posti giusti. Se io digito per esempio forum.miosito.com per essere trasferito alla sottocartella in cui hai effettivamente il forum e cioè miosito.com/forum, l'htaccess con le istruzioni di redirect deve trovarsi nel sottodominio forum.miosito.com, mi chiedo l'hai messo nel posto giusto? Perchè deve per forza funzionare e subito senza aspettare nulla.

Offline Downunder

  • Appassionato
  • ***
  • Post: 633
  • Sesso: Maschio
  • Voi si che avete coraggio a vivere in Italia !!
    • Mostra profilo
Re:htaccess che reindirizza in subfolder
« Risposta #13 il: 30 Apr 2010, 16:02:51 »
Grazie per le risposte.

 



Web Design Bolzano Kreatif