Hosting più siti siti Drupal

Ci sono molte ragioni per cui un amministratore di sistema o sviluppatore può scegliere di ospitare più siti sullo stesso server in una configurazione multisito. Ad esempio, una tale configurazione potrebbe:

  • Consentono di costruire un ambiente di sviluppo efficiente
  • Permetterà di stage e testare un sito prima che vada pubblica
  • Consentono di eseguire diversi software sullo stesso sito
  • Abilitare la condivisione di una singola base di codice su più siti
  • Leverage hosting condiviso
  • Consentono di eseguire siti simili sicura (HTTP su Secure Sockets Layer [HTTPS]) e standard (HTTP) sullo stesso server
  • Facilità di amministrazione del server

Non tutte queste ragioni, tuttavia, sono affrontate meglio con funzionalità multisito di Drupal. Questo articolo si concentra su un solo strategia: come utilizzare Drupal supporto incorporato multisito per creare e servire diversi siti da un'istanza di Drupal.

Hosting più siti siti Drupal hanno

considerazioni di base

Utilizzando il sistema di gestione dei contenuti Drupal (CMS) per creare una configurazione multisito ha diversi vantaggi, uno dei quali è che è probabilmente la configurazione più semplice da configurare e mantenere. Un altro è che la duplicazione dei dati è ridotto al minimo perché Drupal è installato in un solo posto sul server. Infine, Drupal ha una ricchezza di moduli contribuito che possono essere utilizzati per aumentare la gestione multisito, che offre funzionalità avanzate a tutti i siti nella disposizione. La combinazione delle caratteristiche aggiunte e amministrazione semplificata sarebbe un vantaggio per chi vuole impostare e gestire una disposizione multisito. Tuttavia, ci sono alcuni svantaggi ad usare una tale configurazione, e due in particolare meritano grande evidenza: la sicurezza e la condivisione.

I siti in un'installazione multisito condividono lo stesso codice e, quindi, gli stessi file. Di conseguenza, chi ottiene l'accesso al file system del server per un sito ha anche accesso a tutti i file utilizzati per tutti i siti su tale installazione multisito. Pertanto, nei casi in cui diverse persone stanno gestendo siti diversi all'interno della disposizione, potrebbe non essere abbastanza sicuro. Se la sicurezza tra i siti è una questione primaria, o se diverse persone a gestire i vari siti, la funzionalità multisito built-in di Drupal non può essere la soluzione migliore. Invece, di dare ogni sito una propria distinta esempio Drupal. Anche se i vantaggi di facile amministrazione che i consentita dalla disposizione multisito verranno persi, i siti saranno meglio protetti da incidenti.

La seconda preoccupazione - condivisione - centri in tutto l'accesso al database. Anche se multisites di Drupal condividono lo stesso codice sorgente, essi non condividono gli stessi dati del database. Così, nodi, gli utenti, e commenti in un sito non sono accessibili di default da altri siti. Questo comportamento può effettivamente essere considerato come una buona cosa, ma in situazioni in cui l'amministratore può richiedere che tutti i siti di condividere le informazioni, può essere una limitazione per la progettazione di funzionalità multisito di Drupal. Tuttavia, il punto dolce per il supporto integrato multisito di Drupal è che i moduli, i temi, e, anche in una certa misura, i file caricati, possono essere condivisi in tutti i siti. Inoltre, gli stessi o personalizzati file possono essere conservati in diverse cartelle corrispondenti ai diversi siti della configurazione. Se è importante che tutti i contenuti essere condivisa, è possibile utilizzare una funzione di multidominio, che è facilmente fornita da un modulo con lo stesso nome.

che ospita

Installazione di Drupal per l'uso multisito

Dopo aver scaricato l'archivio Drupal (Argomenti correlati per un link), estrarre il file e copiare la cartella risultante alla radice del documento del server web. Questo compito non è difficile con un apposito client FTP; con Secure Shell (SSH) l'accesso al server, il compito è ancora più facile. È sufficiente eseguire un comando wget per scaricare il file di archivio dal repository, ed estrarlo per produrre la cartella di installazione di Drupal. (Se l'ambiente di sviluppo è locale, stand by per ulteriori opzioni.) Assegnare un nome alla cartella di installazione / goodsite.

Tre diversi siti verranno create per questo esercizio; Pertanto, sono necessari tre database diversi - uno per ogni sito. Utilizzando phpMyAdmin dal Cpanel del server, questa operazione è facilmente realizzabile. Quindi, installare il quadro. Due mansioni devono essere eseguite, però, prima di utilizzare il browser Web per eseguire il programma di installazione:

  • Fornire Drupal con le informazioni necessarie sui siti che si intende eseguire.
  • Passare i dati di configurazione site-specific da Drupal per tutti i siti.

Per raggiungere il primo compito, creare una directory speciale per ogni sito. Per il secondo, individuare un file di impostazioni in ogni directory. L'obiettivo è quello di istituire un master di installazione con due sotto-siti. Ogni sotto-sito condivide gli stessi file come il nucleo, ma ognuno avrà il proprio URL e database separato. Gli URL dei siti da creare sono:

Installare il primo ospite

Dopo aver posizionato il codice sorgente di Drupal nella root dei documenti e aver creato i database MySQL, avviare l'installazione del primo sito e il dominio master.

Il dominio master

Il nome di dominio master è l'URL da cui sarà possibile accedere al sito principale (in questo articolo, goodsite.com). Lo scopo primario del dominio master è quello di ospitare l'installazione di base di Drupal. Indipendentemente dal fatto che questo dominio viene utilizzato come uno dei suoi siti, se eventuali sotto-siti non riesce, i loro URL stabilizzeranno al dominio di master; Pertanto, è una buona idea che questo sito contiene informazioni utili per i siti secondari, come ad esempio le informazioni di contatto.

Come accennato, una sottocartella deve essere creata all'interno della cartella principale di Drupal per ogni sotto-sito. Quello che molti potrebbe immaginare il compito più difficile di installazione multisito di Drupal è semplicemente di routine: Let Drupal sapere quali siti si desidera ospitare, e semplicemente creare sottocartelle per quei siti nella cartella / siti.

Nella cartella principale principale Drupal è una directory chiamata / siti. Se hai somministrato Drupal prima, sai tutto il codice non-core dovrebbe risiedere all'interno di questa cartella. Nell'installazione di default di Drupal, la cartella / siti contiene due directory. Il primo, chiamato all /, è dove si dovrebbe mettere i temi scaricati e moduli. La directory / tutto è la posizione per informazioni condivise in tutti i siti. La seconda cartella, denominata default /, è dove i file di configurazione devono essere tenuti, così come non core e personalizzati temi e moduli. Drupal cerca in genere il / directory predefinita per informazioni di configurazione del sito meno che non sia indicato diversamente. Si noti, tuttavia, che questi sono presupposti per un generico, sito host singolo - non necessariamente per un'installazione multisito.

Creare le sottocartelle ei file

Una grande punta per la costruzione di multisito Drupal è che a parte il tutto / e default / cartelle, altre cartelle possono essere creati in / siti, e Drupal assegnerà loro un significato speciale. Più in particolare, Drupal presuppone che tutte le altre directory trovati nelle / siti cartella rappresentare un nome host o un modello di nome host.

Si crea una sottocartella nel modello / goodsite / sites / sotto le / cartella Siti per tutti i siti secondari, sostituendo l'URL previsto per il nome di ciascuna cartella sotto-sito. In questo esempio, si hanno i seguenti siti secondari, come mostrato in Figura 1.

Per ogni sotto-sito, effettuare le seguenti operazioni:

  1. Copiare il file default.settings.php da siti / default per ogni cartella sotto-sito, e rinominarlo settings.php.
  2. Utilizzare chmod per impostare l'autorizzazione su settings.php a 644, se non è l'autorizzazione corrente.
  3. Per un'installazione di Drupal, versione 6, creare una cartella denominata file sotto ogni sotto-sito, e utilizzare chmod per modificare l'autorizzazione a 755.

Questa è una cartella all'interno della quale Drupal è in grado di scrivere contenuti - in genere, i file caricati, le miniature delle immagini, aggregate Cascading Style Sheet (CSS) e file JavaScript. Questi file non vengono memorizzati nel database, ma piuttosto nel file system, quindi è necessario avere una directory in cui questi file possono risiedere.

Per impostazione predefinita, Drupal cerca una sottodirectory denominata file / all'interno della directory di ogni sito. In un'installazione predefinita Drupal, questa cartella sarebbe in siti / default / files /.

  • Creare una cartella denominata moduli per ciascuna sotto-sito.

    Questa è la cartella in cui tutti i moduli specifici di tale sotto-sito risiedono. Tutti i moduli che tutti i siti useranno dovrebbe risiedere nella cartella di tutti i siti / / moduli.

  • Creare una cartella denominata temi per ciascuna sotto-sito.

    Questo è dove sono collocati tutti i temi unici a quel sotto-sito. Qualsiasi tema che tutti i siti useranno dovrebbe risiedere in siti / all / temi.

    Ora, puntare gli URL sub-sito per il server web, se non sono gestiti dalla stessa società di hosting. Se si utilizza host differenti per i vari siti, è necessario modificare le informazioni di Domain Name System (DNS) (sia i registrar e le società di hosting dovrebbe essere in grado di dirvi come farlo). Successivamente, si dovrà "parcheggiare" quel dominio sulla parte superiore del dominio principale - in questo caso, goodsite.com. Da questo punto, si dispone di un paio di alternative, la più difficile delle quali comporta l'uso di ciò che è chiamato un link simbolico. Il parcheggio è molto più semplice, tuttavia; Quindi nel tuo Cpanel, cliccare sui domini parcheggiati. Aggiungere bettersite.com e bestsite.com a New Domain Name. e quindi fare clic su Aggiungi dominio.

    Creare le multisites

    Ci sono diversi modi per andare da qui, ma ancora una volta, diamo la via più facile: si carica direttamente il database per ogni sotto-sito con le tabelle create nell'installazione sito principale. Per fare ciò, è necessario creare un dump delle tabelle del database dall'impianto sito principale e salvarlo in locale. Quindi, o caricare il file con phpMyAdmin o aprirlo con un editor di codice. Per utilizzare la seconda opzione, eseguire queste operazioni all'interno di phpMyAdmin:

    1. Vai alla banca dati creata per il sotto-sito.
    2. Vai a SQL. e quindi incollare tutto il codice dal Structured Query Language (SQL) discarica lì.
    3. Fare clic su Go.
    4. Questa procedura riproduce le tabelle del database del sito padrone nel database sotto-sito.

      Quindi, aprire il file settings.php per ogni sotto-sito, e cerca la seguente riga:

      Modificare questa banca dati che collega stringa per riflettere i parametri per il database sotto-sito (nome utente, password, nome host, il nome del database). Ora, se si va a bettersite.com, si dovrebbe ottenere lo standard "Benvenuto nel tuo nuovo sito web Drupal" pagina, come mostrato in Figura 2. Ripetere questi passaggi per tutti i siti.

      Creazione di multisites da sottodomini

      C'è un altro modo per creare rapidamente multisites da prima di loro in dettaglio come sottodomini dalla Cpanel. In questo metodo, tuttavia, è necessario inizialmente creare cartelle per ogni sito in / goodsite / siti, questa volta utilizzando la seguente convenzione (vedi figura 3):

      Si noti che le cartelle di sub-dominio devono avere gli stessi nomi dei sub-domini stessi. Come prima, mettere una copia di default.settings.php in ogni cartella sottodominio, modificare il nome del file per settings.php. e il rilascio chmod per modificare l'autorizzazione a 644.

      Ora, tornare a cPanel e creare due sottodomini:

      Creare un collegamento simbolico

      Un link simbolico è un file che contiene un riferimento a un altro file o una cartella in forma di un percorso assoluto o relativo, ed è stato creato per influenzare la risoluzione dei nomi percorso. Utilizzare qualsiasi editor di codice per creare un file chiamato symlink.php. e quindi aggiungere il codice simile al seguente:

      In questo caso, il file potrebbe essere simile a questa:

      Mettete questo link simbolico nella directory principale del sito principale, ed eseguirlo dal goodsite.com/symlink.php URL. Se la sintassi del codice è buono, si dovrebbe vedere una pagina vuota; in caso contrario, si vedrà messaggi di errore. Tweak il codice in questo file fino a quando non viene fuori in modo corretto.

      configurare .htaccess

      Ora aprite il file .htaccess in qualsiasi editor di codice. Cercare la seguente riga:

      Rimuovere il simbolo cancelletto (#), e aggiungere la seguente riga prima di salvare le modifiche:

      Ecco cosa .htaccess dovrebbe essere simile al termine:

      Questa redirezione rende possibile sia per goodsite.com/bettersite e bettersite.goodsite.com per essere reindirizzato allo stesso sito. Se tutto è stato fatto correttamente, si verrà indirizzati alla pagina di installazione quando si accede al sotto-sito URL bettersite.goodsite.com e bestsite.goodsite.com.

      Con tutti i siti installati, è facile da Cpanel per associare il bettersite.goodsite.com sito utilizzando un redirect al bettersite.com URL.

      Multisito su un host locale in esecuzione Ubuntu

      Esecuzione di un'installazione multisito su Ubuntu è un po 'più complicato di quello che avete fatto finora per hosting remoto. Un'installazione multisito può essere facilmente configurato utilizzando il metodo descritto nelle seguenti sezioni.

      Creare una nuova cartella host

      Iniziare con la creazione di una cartella denominata goodsite nella cartella principale utilizzando il seguente codice:

      Il risultato dovrebbe essere -> / home // Goodsite.

      Ora copiare tutti i file Drupal in questa cartella.

      Modificare il file hosts

      Modificare il file hosts aprendo una finestra di terminale con il seguente comando:

      È quindi possibile aggiungere qualsiasi nome del sito nella mysite.com formato di 127.0.0.1. Per questo esempio, aggiungere le seguenti righe:

      Modificare i siti disponibili

      Ora vai alla cartella sites-available per creare un file denominato goodsite.com usando i seguenti comandi:

      Il primo comando passa alla cartella sites-available; il secondo comando copia il file di default e lo rinomina goodsite.com. Il terzo comando apre il file goodsite.com per la modifica. Aggiungere il codice mostrato nel Listato 1 al file.

      Salvare goodsite.com, attivarlo, e quindi ricaricare Apache utilizzando i seguenti comandi:

      Creare cartelle sotto-sito

      Crea il tuo sub-site nella cartella / sites / home / [il tuo nome di login ubuntu] /goodsite/sites/bettersite.com, e quindi aggiungere settings.php nella nuova cartella. Se si è già navigato alla / directory siti, copiare il file settings.php con il seguente comando:

      installazione Eseguire sotto-sito

      Aprire il browser, quindi digitare bettersite.com. Si dovrebbe vedere la pagina di configurazione di installazione. Rendere il file settings.php sola lettura di nuovo per evitare messaggi di sicurezza, quindi eseguire l'installazione sotto-sito.

      Successivamente, creare una cartella sito ed eseguire l'installazione per bestsite.com così come tutti gli altri sotto-siti menzionati nella configurazione host.

      moduli multisito

      I moduli vengono utilizzati per estendere la funzionalità di un impianto di base di Drupal e sono disponibili in varie categorie, dalle amministrative alle attuali funzionalità prestazioni di miglioramento. Diversi moduli possono contribuire a creare una configurazione multisito o simili. Per i dettagli su come utilizzare questi moduli, consultare la documentazione di installazione per ogni modulo.

      I moduli di accesso al dominio

      I moduli di accesso al dominio (vedere Argomenti correlati per un link) consentono la creazione di un multisito utilizzando un'unica base di codice, un database utente condiviso, e diversi database del contenuto sign-on, ma con in comune. Tale configurazione è diverso da quello che abbiamo fatto in questo articolo. L'accesso di dominio è in realtà descritta come un insieme di moduli che facilitano l'esecuzione di un gruppo di siti utilizzando un codice di base di Drupal installato all'interno di un unico database condiviso. Questi moduli consentono di tutti i siti per condividere gli utenti, contenuti e impostazioni se sono stati preconfigurati per funzionare in questo modo. I moduli di accesso al dominio impiegano Access System Nodo di Drupal per stabilire quali contenuti dovrebbe essere reso disponibile su ciascun sito nella disposizione multisito. I moduli, a differenza di altri moduli multidominio, controllano anche l'accesso degli utenti sulla base del dominio attivo l'utente sta visualizzando, non sulla base del gruppo o sito a cui appartiene l'utente.

      Il modulo multisito manager

      Il Gestore multisito (Argomenti correlati per un link) è un modulo che permette contribuito creazione di nuovi siti Drupal da un sito Drupal base senza la necessità di accedere al database di installazione. Per impostazione predefinita, il nuovo sito è installato nello stesso database, come l'installazione di base, ma con un prefisso diverso. In caso contrario, se l'utente corrente dispone delle autorizzazioni di accesso per creare un database, l'installazione potrebbe essere fatto in quel database.

      Conclusione

      Questo articolo ha esplorato come creare una configurazione di multisites utilizzando Drupal come base CMS. È stato installato il sito principale e si trova i siti secondari all'interno della sua struttura di directory. Hai imparato come eseguire installazioni multisito su un server remoto utilizzando le strutture amministrative vostra società di hosting fornisce. È inoltre appreso come creare un'installazione multisito su un computer locale - in particolare, su un computer con Ubuntu Linux. Questo articolo ha anche introdotto due moduli di Drupal che possono aiutarvi nella creazione di entrambe le configurazioni multisito e multidominio.

      Articoli Correlati

      siti di hosting Multi DrupalSe si esegue più di un sito Drupal, è possibile semplificare la gestione e possibile aggiornare i siti utilizzando la funzionalità multi-sito. Multi-sito permette di condividere un singolo Drupal ...
      Hosting più siti DrupalCi sono molte ragioni per cui un amministratore di sistema o sviluppatore può scegliere di ospitare più siti sullo stesso server in una configurazione multisito. Ad esempio, una tale configurazione potrebbe: ...
      Hosting due siti WordPress su un serverfunzione Multisite Se si desidera che più blog che utilizzano WordPress, usare la funzione multisito per creare quello che è stato definito come una rete di siti. Questa funzionalità è stata implementata dalla fusione WordPressMU ...
      Hosting più siti dimostrativi Drupalcaratteristica Mutlisite di Drupal suona come il Santo Graal per ogni volta che si desidera eseguire più siti Drupal. Tuttavia, la risposta alla domanda "Dovrei usare multisites?" è meglio scoperto da sapere che cosa ...
      pagine stampabile Hosting DrupalDrupal è un robusto Content Management System che viene eseguito su un server LAMP. Il server LAMP utilizza MySQL di default, ma PostgreSQL può essere utilizzato anche con Drupal. Può ospitare blog, forum e un ...