Ich versuche, einen Staging-Server so einzurichten, dass er als Subdomäne meines Produktionsservers ausgeführt wird, und stoße dabei auf ein kleines Problem.
Mein Produktionsserver wird auf einer virtuellen Maschine von RackSpace gehostet. Ich habe diese Maschine geklont, um sie als Staging-Server zu verwenden. Außerdem habe ich A
Datensätze hinzugefügt, um die Subdomänenadresse auf diese neue virtuelle Maschine umzuleiten.
Ich möchte auf diesen Staging-Server zugreifen können, indem ich eingebe staging.domain.com
, aber das funktioniert derzeit nicht. Der Workaround, der meiner Meinung nach funktioniert, ist die Eingabe von www.staging.domain.com
. Beachten Sie das Extra www
vor der Subdomäne.
Meine Verzeichnisstruktur ist so, dass ich in meinem Projektverzeichnis ein public_html
Verzeichnis (das offensichtlich die öffentlich sichtbaren Dateien enthält) und ein Verzeichnis private
(das mehr vom Back-End-Code enthält) habe. Ich möchte, dass Apache /var/www/staging.domain.com/public_html/index.php
als Standarddatei dient, wenn ich besuche staging.domain.com
.
Wie gesagt kann ich das, was ich möchte, derzeit nur erreichen, wenn ich besuche www.staging.domain.com
. Wenn ich besuche, staging.domain.com
werde ich zu weitergeleitet www.staging.domain.com/staging.domain.com/public_html
.
Meine httpd.conf ist wie folgt eingerichtet (ich bin definitiv kein Experte in der Konfiguration dieser Datei):
<VirtualHost *:80>
# General Server Setup
ServerAdmin [email protected]
ServerName www.staging.domain.com
ServerAlias staging.domain.com
# Indexes + Directory Root
DirectoryIndex index.php index.html
DocumentRoot /var/www/staging.domain.com/public_html
<Directory /var/www/staging.domain.com/public_html>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
DocumentRoot
Ich bin ziemlich sicher, dass die Weiterleitung, von der ich vorhin gesprochen habe, aufgrund meiner Angaben in dieser Datei erfolgt .
Außerdem habe ich viele verschiedene Kombinationen von CNAME
und A
Datensätzen ausprobiert, um dies zum Laufen zu bringen, bin aber für alle anderen Vorschläge, die Sie möglicherweise haben, offen.
Aktualisieren
Ich habe für meine .htaccess
Datei nichts angegeben, daher sollte dies keine Auswirkungen haben.
Mein aktueller DNS-Eintrag für diesen Server lautet:
Typ Name Inhalt TTL Eine staging.domain.com XX.XX.XX.XX(Server-IP) 300 A www.staging.domain.com XX.XX.XX.XX(Server-IP) 300
Ich habe wirklich keine zusätzlichen Informationen zu meiner Konfiguration, die ich mit Ihnen teilen könnte. Wenn Ihnen etwas einfällt, fragen Sie einfach.
Antwort1
Es stellte sich heraus, dass es eine Standarddatei .htaccess
im /var/www/
Verzeichnis gab, die diese Aktion verursachte. Ich habe sie wie von @Shane_Madden vorgeschlagen entfernt, wodurch das Problem behoben wurde.