
Ich verwende EC2-Linux-Instanzen, um eine Drupal 7-Site auszuführen.
Ich plane, einen Server für die Produktionssite (drupalsite.com) zu haben.
Wie kann ich eine EC2-Linux-Instance einrichten, um sowohl Test- als auch Entwicklungsumgebungen mit zwei unterschiedlichen URLs (dev.drupalsite.com und test.drupalsite.com) zu hosten?
Antwort1
Ich werde hier einige Annahmen treffen:
- Sie verwenden Apache
- Sie haben Ihre Domäne bereits so konfiguriert, dass sowohl
drupalsite.com
Atest.drupalsite.com
-Einträge auf die IP-Adresse Ihrer EC2-Instanz verweisen.
Jetzt haben Sie wahrscheinlich bereits Ihren Apache-Webserver so konfiguriert, dass er dieVirtueller Host drupalsite.com
, zB in /etc/apache2/sites-available/default
oder ähnlich wie dieDokumentation auf Drupal.com:
<VirtualHost *:80>
ServerName drupalsite.com
DocumentRoot /var/www/drupal-production/
<Directory /var/www/drupal-production/>
Options +FollowSymLinks Indexes
AllowOverride All
order allow,deny
allow from all
</Directory>
</VirtualHost>
Jetzt müssen Sie einen zweiten VirtualHost erstellen, der nur einer Subdomäne zugeordnet ist:
<VirtualHost *:80>
ServerName test.drupalsite.com
DocumentRoot /var/www/drupal-test/
<Directory /var/www/drupal-test/>
Options +FollowSymLinks Indexes
AllowOverride All
order allow,deny
allow from all
</Directory>
</VirtualHost>
Speichern Sie dies in Ihrer Apache-Konfigurationsdatei und führen Sie es aus /etc/init.d/apache2 reload
– jetzt verweist jede Anfrage test.drupalsite.com
auf das andere Verzeichnis.
Natürlich sollten Sie Ihre Drupal-Instanz so konfigurieren, dass sie eine andere Datenbank als der Produktionsserver verwendet. Es wäre auch gut, die Testinstallation vor dem Zugriff durch unbefugte Benutzer und Suchmaschinen zu schützen. Ein.htpasswd
sperrenoder eine Einschränkung auf Basis von IP-Adressen über denmod_access
Richtlinien.