Ich habe namensbasiertes Hosting, nennen wir es my.address.com
. Mein Freund hat die 'normale' Adresse address.com
und hat mir eine virtuelle Maschine gegeben, auf die ich über SSH zugreifen kann.
Er hat auch etwas Magie mit Ports gemacht und jetzt, nach der Installation von Apache, konnte ich /var/www
durch zugreifen my.address.com
.
Die Frage ist also, wie kann ich eine Subdomain erstellen test.my.address.com
?
Es sollte etwas Magie mit Apaches Listen-Direktive geben , aber ich kann es nicht herausfinden. Ich weiß auch, wie man mit Apache lokal verfügbare Sites erstellt, aber es ist nicht dasselbe.
apache-http-server
virtual-host
subdomain
Scythargon
quelle
quelle
Listen
, schauen Sie sich die virtuellen Hosts von Apache anAntworten:
Um Subdomains erstellen zu können, müssen Sie einige Dinge beachten:
DNS
Damit andere Personen zugreifen können
test.my.address.com
, müssen sie in der Lage sein, diesen Namen in die IP-Adresse Ihrer virtuellen Maschine aufzulösen. Wie geht das?Höchstwahrscheinlich hat Ihr Freund bereits einen A-Eintrag in der
address.com
Zone erstellt, dermy
auf die IP-Adresse Ihrer VM verweist .So weit, ist es gut. Aber was ist mit
test.my
? Möglicherweise ist noch kein Eintrag vorhanden.Ihr Freund kann
*.my
der Zone auch einfach hinzufügen (und auf dieselbe IP-Adresse verweisen). Dann werden alle Anfragensomething.my.address.com
an Ihre VM gesendet. Groß!Apache Virtual Hosts
Sobald Ihre VM erreicht ist, muss Apache wissen, wie mit der Anfrage umgegangen wird. Hier verwenden wir die Virtual Hosts- Funktion des Apache HTTP-Servers.
Normalerweise laufe ich unter Debian, daher erkläre ich dies anhand einer Beispielkonfiguration in
/etc/apache2/sites-available
. Lassen Sie uns dort eine Datei aufrufentest.my.address.com
und mit Informationen füllen.Die Schlüsseleinstellung in dieser Datei ist die
ServerName
Direktive . Dies teilt Apache mit, unter welchem Namen dieser Server verfügbar sein soll. Zusätzliche Namen können mit der ServerAlias-Direktive angegeben werden .Falls Sie auch Debian verwenden, vergessen
sudo a2ensite test.my.address.com
Sie nicht, nachdem Sie die Datei und erstellt habensudo invoke-rc.d apache2 restart
.quelle
test.my.address.com
geht anmy.address.com
und dann kümmert sich mein Apache-Server auf VM darum . Aber Sie sagten, dass der DNS-Server von address.comtest.my
vorher Bescheid wissen sollte und unabhängig davonmy
, warum.