Back to Question Center
0

Semalt e host virtuali per spostare i sottodomini in richieste simili a cartelle

1 answers:

Sto amministrando un sito Web che in precedenza disponeva di mini-siti configurati per varie località fisiche utilizzando sottodomini ( città1. luogo. com , town2. luogo. com , ecc - tie rack melbourne. ) e ora ho bisogno di disabilitare questi mini-siti. Non vengono più utilizzati e risiedono su un server che è obsoleto. Tuttavia voglio che gli utenti che possono avere o trovare i vecchi link siano indirizzati all'archivio Magento in esecuzione su un nuovo server con una richiesta simile a www. luogo. com / store-locations-city1 in modo che l'utente ottenga la pagina di informazioni di quel negozio.

Se cambio semplicemente le voci DNS per quei sottodomini in modo che facciano riferimento al server dell'archivio Web e non ci sia alcuna configurazione dell'host virtuale, verranno reindirizzati (credo, non abbiamo verificato) all'host virtuale predefinito. (io. e. città1. luogo. com diretto a www. luogo. com IP senza host virtuale per city1 verrà reindirizzato a www. luogo. com )

Se è corretto, posso semplicemente impostare una regola di riscrittura per ogni sottodominio che reqrites l'URL a www. luogo. com / store-location- [città / città] ? Dove dovrei configurare quelle riscritture?

Se ciò non funziona come penso, quale alternativa ho?

Dopo ulteriori letture, ho provato con un sito e questi sono i miei risultati: senza un host virtuale, posso verificare che l'URL venga automaticamente reindirizzato all'host virtuale predefinito.

Se l'URL originalmente contiene qualcosa, non cambia questo comportamento.

Ho aggiunto un host virtuale per quel sottodominio con:

    ServerAdmin webmaster @ localhostServerName city. luogo. comServerAlias ​​www. luogo. com città. luogo. comReindirizzamento / http: // www. luogo. com / store-luoghi-city
    

che funziona a meno che l'URL originale non contenga qualcos'altro, ad esempio city1. luogo. com / contact che risulta in 404 perché www. luogo. it / store-locations-city1contact non esiste.

Devo ancora sapere come e dove riscrivere qualsiasi cosa diversa da / in questo caso

February 9, 2018

Ho trovato la soluzione perfetta: Usa RedirectMatch

Avrò un host virtuale configurato per ciascun mini-sito che assomiglierà a questo:

  ServerAdmin webmaster @ localhostServerName city. luogo. comServerAlias ​​www. luogo. com città. luogo. comRedirectMatch ^ / (. +) http: // www. luogo. com / $ 1RedirectMatch / http: // www. luogo. com / store-luoghi-city
 

Sto usando $ 1 sul primo RewriteMatch perché il sito è configurato per eseguire ricerche su 404 url. Questo dovrebbe essere più user-friendly del semplice indirizzamento all'indice. Non so quale effetto questo avrà sul SEO, però.