Autore: Zheng Tao
sistema operativo Linux è molto caldo ora, così molti dei miei amici vogliono sapere su Linux, il processo di realizzazione di uno spazio virtuale. I seguenti sono basate su popolari vigenti in materia di RedHat per discutere.
1, le impostazioni server DNS
Sappiamo che la rete Internet si basa sul protocollo TCP / IP per comunicare tra loro deve essere l'indirizzo IP, che si ottiene attraverso il server DNS. Quindi, al fine di rendere il dominio virtuale deve primo server DNS di accettare il dominio virtuale, cioè, le mappe per l'indirizzo IP specificato. Perché ci affidiamo a distinguere il nome del server di dominio web, quindi questo dovrebbe essere l'indirizzo IP del server Web gestiti naturale.
RedHat6.0 sistema operativo fornito in bundle con server BIND DNS. E 'il file di configurazione del dominio è "/ etc /" named.conf, in circostanze normali, la configurazione del file di dominio in "/ var /" directory di nome.
Casi 1, la configurazione del file named.conf:
zona "domain.com" (
type master;
file "domain.com";
);
zona "0.10.10.in-addr.arpa" (
type master;
file "10.10.0";
);
Gli esempi di file "domain.com dominio di configurazione è" / var / named / "domain.com, invertire il file di configurazione del dominio è" / var/named/10.10.0 ". file domain.com è responsabile per la mappatura di dominio DNS indirizzo IP.
2 casi, domain.com file di configurazione:
@ IN SOA dns.domain.com. Hostmaster.dns.domain.com. (
1998111003; seriale
3600; refresh
900; riprovare
1209600; scadenza
43.200; default_ttl
)
@ IN MX 10 dns.domain.com.
@ IN dns.domain.com NS.
@ IN A 10.10.0.1
www IN A 10.10.0.1
Assunta di aumentare il nome di dominio è aaa.domain.com, vogliono scegliere www.domain.com, i servizi DNS dovrebbe essere aggiunto ad un record di alias, può essere scritta come:
AAA in www.domain.com CNAME.
Se avete bisogno di configurare un numero elevato di dominio virtuale, domain.com file per essere grande, ma anche molto ingombrante. Si può usare il simbolo "*", cioè a partecipare alla domain.com file:
* IN CNAME www.domain.com.
In modo che non ha messo tutte le impostazioni date a domain.com a www.domain.com fine di tutti i record andare, se aaa.domain.com o bbb.domain.com. Ciò non influirà il record esistente. Configurato server DNS dovrebbe riavviare il demone named:
[Root @ dominio / root] # / etc / rc.d / init.d / named restart
[Successiva]
sistema operativo Linux è molto caldo ora, così molti dei miei amici vogliono sapere su Linux, il processo di realizzazione di uno spazio virtuale. I seguenti sono basate su popolari vigenti in materia di RedHat per discutere.
2, di configurazione del server Apache
Apache è il server più utilizzato su Internet server Web, che può mantenere un sito molto frequentato. RedHat 6.0 fasci di Apache Web Server 1.3. La sua configurazione file che si trova in "/ etc / httpd /" directory conf, ci sono httpd.conf, srm.conf, access.conf, discutere il seguente in relazione alla configurazione di uno spazio virtuale:
1, configurazione statica
I passaggi per modificare il file di configurazione httpd.conf:
(1) UseCanonicalName primo set è spento. Si segnala che con il server Host: intestazione del contenuto invece del valore di ServerName a fornire alla SERVER_NAME variabile di ambiente.
(2) e poi ha aggiunto:
NameVirtualHost xxx.xxx.xxx.xxx dove xxx.xxx.xxx.xxx è il server virtuale per configurare l'indirizzo IP. Qui è possibile configurare più indirizzi IP virtuali, naturalmente, con la stessa configurazione del server DNS. (Nota: Questo indirizzo usare IP, nomi di dominio non può essere utilizzato.)
(3) Successivamente, per ciascun nome a dominio virtuale con l'aggiunta di un record:
VirtualHost Xxx.xxx.xxx.xxx
.....
/ VirtualHost
e il xxx.xxx.xxx.xxx NameVirtualHost all'indirizzo IP della stessa configurazione. Tra i due marchi possono essere aggiunti ai parametri di configurazione sono:
ServerName con voi per aumentare il dominio virtuale, come aaa.domain.com;
DocumentRoot Se si associa al percorso della macchina dietro l'aumento, ad esempio "/ home / aaa";
Se si reindirizzare mappa ad un URL remoto da aggiungere alla schiena, ci sono due parametri, il primo è il dominio virtuale percorso relativo, il secondo è il sito remoto URL;
ServerAlias dopo l'adesione alias di dominio, è possibile utilizzare i caratteri jolly come aaa.domain.com *..
I seguenti due esempi:
Esempio 3, mappato il percorso fisico della macchina:
VirtualHost Xxx.xxx.xxx.xxx
DocumentRoot "/ home / test"
ServerName test.domain.com
Virtualhost
Esempio 4, mapping a un URL remoto:
VirtualHost Xxx.xxx.xxx.xxx
ServerName test1.doamin.com
redirect / http://test.domain1.com/welcome.htm
/ VirtualHost
Alcuni parametri, come la posizione del file di registro, le impostazioni di time-out, le impostazioni di buffer, ecc, non 11 in questa descrizione può fare riferimento al file di help in linea del server Apache. Httpd.conf configurato per riavviare Apache dopo il demone httpd sfondo,
[Root @ dominio / root] # / etc / rc.d / init.d / httpd restart
Ogni ulteriore periodo da aumentare in un nome di dominio virtuale nella ... VirtualHost ... / VirtualHost il codice tra la configurazione e riavviare il httpd effetto solo dopo la nuova configurazione.
2, di configurazione dinamica
Può essere trovata, se si desidera configurare un gran numero di domini virtuali notevolmente aumentare la lunghezza del file di configurazione, in modo da Apache inizia a rallentare, occupano più memoria, ma non facile da ottenere l'iscrizione online. Possibile scegliere di configurare dinamicamente. Senza l'autorizzazione scritta questa configurazione, ma attraverso la preparazione di alcune regole dinamiche per generare automaticamente, o in qualsiasi momento dal file di configurazione separato per leggere le informazioni.
Apache ha una potente estensione per quel modulo (moduli) caratteristiche. Modulo può estendere la funzionalità del server, e utilizzarlo per l'esecuzione di server caricato, così che è stato inserito nel server di quanto sia necessario per risparmiare spazio in memoria, mentre la chiamata al processo esterno CGI di velocità.
Ora usa un potente modulo per configurare dinamicamente un dominio virtuale, che è mod_rewrite. È responsabile per l'ascolto da parte del cliente inviate l'indirizzo URL e l'espressione sulla base di un insieme di regole da riscrivere l'URL. Questo è simile al concetto di alias URL, ma si fa un ulteriore passo in avanti, l'uscita del l'URL può essere mappato a qualsiasi altro host indirizzo URL. I passaggi per modificare il file di configurazione httpd.conf:
(1) La UseCanonicalName primo set è spento.
(2) l'uso di open riscrivere motore RewriteEngine via. Impostare il file di configurazione con RewriteMap posizione e gli attributi, con RewriteCond e RewriteRule di sviluppare le relative regole.
Casi 5, file httpd.conf, la configurazione di un esempio:
RewriteEngine su
RewriteMap int minuscolo: tolower
# Definire un file di configurazione separati
RewriteMap vhost dbm: / www / conf / vhostdbm
# File di configurazione di utilizzazione separata per mappare il dominio virtuale
RewriteCond vhost $ (:% 1) ^(/.*)$
RewriteRule 1/docs ^/(.*)$% / $ 1
RewriteCond% (REQUEST_URI) ^ / cgi-bin /
RewriteCond $ (minuscolo:% (SERVER_NAME)) ^(.+)$
RewriteCond vhost $ (:% 1) ^(/.*)$
RewriteRule ^/(.*)$% 1/cgi-bin / $ 1
Qui vhostdbm formato di file, vedere "CGI preparazione dei programmi".
[Successiva]
sistema operativo Linux è molto caldo ora, così molti dei miei amici vogliono sapere su Linux, il processo di realizzazione di uno spazio virtuale. I seguenti sono basate su popolari vigenti in materia di RedHat per discutere.
In terzo luogo, per la programmazione CGI
Per applicare online dominio virtuale, è necessario scrivere il programma appropriato CGI dinamicamente modificare il file di configurazione separato (che è al di sopra dei file vhostdbm) e per la gestione degli utenti (comprese le applicazioni utente, login, cambio password, ecc.) Questo descrive solo il profilo del funzionamento indipendente, l'altro è come usare il linguaggio Perl per scrivere programmi CGI, fare riferimento alle informazioni pertinenti.
vhostdbm file utilizzando il formato dbm alla scrittura di dati, e confrontati con un file di testo può accelerare la ricerca della velocità, e facile da modificare. Molti sistemi UNIX hanno chiamato dbm (gestione database) della libreria standard. La biblioteca sarà fondamentale - coppie valore memorizzato in un file su disco, per forniscono semplici tool di gestione di database, si può facilmente cambiare, aggiungere o cancellare i dati contenuti.
via di accesso Perl dbm: aprire il file attraverso un processo analogo di un array associativo con il database dbm verranno collegati. Creare un nuovo elemento nella matrice immediatamente cambiato quando il database dbm. Rimuovere un elemento al tempo stesso rimuovere i valori del database dbm. Può essere utilizzato:
1, che intendono dbm dbm serie di banche dati e relativi a:
dbmopen (ArrayName% ", dbmfilename", la modalità di $);
Se dbmfilename non esiste la nuova biblioteca. parametro ArrayName% è array associativo di Perl (se l'array è già un valore, allora tali valori saranno cancellati). L'array associativo collegato al dbmfilename chiamato il database dbm. $ Argomento Mode è la necessità di creare una libreria quando il file di libreria di autorizzazioni per controllare il numero, la cifra è designato come sistema di 8, viene spesso utilizzato è 0644, in aggiunta alla nuova aggiunta alla macchina principale per le autorizzazioni di sola lettura per l'utente, i proprietari della macchina a avere accesso completo.
2, chiudere il dbm biblioteca:
dbmclose (ArrayName%);
Libreria% dbm ArrayName è già associato il nome della matrice.
Cause 6, VHOST vhostdbm aprire o creare una libreria dbm:
dbmopen (VHOST% ", vhostdbm", 0644);
Esempio 7, i nuovi record o modificare i record esistenti (che si trova sotto forma di trasferimento dal file html sul parametro denominato vhost, rhost):
VHOST $ ($ FORM (''vhost''}}=$ FORM (''''rhost);
Esempio 8, elimina il record esistente (impostato nel modulo di trasferimento dal file html sul parametro denominato vhost):
eliminare $ VHOST ($ FORM (''''}}; vhost
Esempio 9, nei pressi vhostdbm:
dbmclose (VHOST%);
Nota: I parametri di cui sopra sono stati assunti dopo la trasmissione su di verifica, non si ripeta il record, altrimenti si arriverà a caos sono stati registrati.