Tom: lokale testumgebung streikt, it works!, aber kein inhalt

Beitrag lesen

Hello,

Weiß jemand, wie ich apache2 dazu überreden kann, die httpd.conf die bei mir unter dem pfad /etc/apache2/conf-available/httpd.conf zu finden ist doch zu laden? Das ging ja zuminderst in der übergangszeit durch einen Eintrag (welchen?) in der apache2.config. Ja, klar, heute wird das über sites-available geregelt, müsste ich alles neu einrichten. Ok, Frage an Tom: wie sieht beispielhaft deine sites-available und deine sites-enabled aus (Wenn möglich ein beispiel für einen Vhost).

zunächst solltest Du mal lesen:
http://httpd.apache.org/docs/2.0/de/vhosts/
oder auch
http://www.prontosystems.org/tux/apache_vhost als mMn gute Anleitung

Und dann sollte unter /etc/apache2/sites-available die default-Seite stehen, und es sollte sich dort auch ein Beispiel für einen vHost befinden:

Die Datei heißt üblicherweise "default.dpkg.dist"

  
<VirtualHost *:80>  
        ServerAdmin webmaster@localhost  
  
        DocumentRoot /var/www/  
        <Directory />  
                Options FollowSymLinks  
                AllowOverride None  
        </Directory>  
        <Directory /var/www/>  
                Options Indexes FollowSymLinks MultiViews  
                AllowOverride None  
                Order allow,deny  
                allow from all  
        </Directory>  
  
        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/  
        <Directory "/usr/lib/cgi-bin">  
                AllowOverride None  
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch  
                Order allow,deny  
                Allow from all  
        </Directory>  
  
        ErrorLog /var/log/apache2/error.log  
  
        # Possible values include: debug, info, notice, warn, error, crit,  
        # alert, emerg.  
        LogLevel warn  
  
        CustomLog /var/log/apache2/access.log combined  
  
    Alias /doc/ "/usr/share/doc/"  
    <Directory "/usr/share/doc/">  
        Options Indexes MultiViews FollowSymLinks  
        AllowOverride None  
        Order deny,allow  
        Deny from all  
        Allow from 127.0.0.0/255.0.0.0 ::1/128  
    </Directory>  
  
</VirtualHost>  

Halte dich einfach an die Gepflogenheiten der Debian-Apache-Konfiguration, dann sollte es mit "Copy-n-Paste" und ein paar "alle ersetzen" für die Hostnamen, sowie ein paar "mkdir" für die Verzeichnisse im Dateisystem udn ein paar "chown www-data:www-data ./ -R" getan sein.

Hier eine meiner Beispielkonfigurationen, die ich eben gerade für einen XAMPP angelegt habe. Die unterscheidet sich mMn aber nicht wesentlich von der späteren für den Produktivserver:

  
<VirtualHost *:80>  
    ServerAdmin webmaster@testserver.lan  
    DocumentRoot "M:/USER/TOM/WebProgTests/gpeasy.lan/htdocs"  
    ServerName gpeasy.lan  
    ServerAlias www.gpeasy.lan  
  
    <Directory "M:/USER/TOM/WebProgTests/gpeasy.lan">  
        Order Allow,Deny  
        Allow from all  
        Options All  
        AllowOverride All  
        IndexOptions +FancyIndexing +IgnoreCase +FoldersFirst +NameWidth=50  
  
        AddDefaultCharset UTF-8  
        ## AddDefaultCharset ISO-8859-1  
  
        php_value error_reporting 30719  
        php_value magic_quotes_gpc 0  
  
        php_admin_value memory_limit 128M  
        php_admin_value open_basedir "M:/USER/TOM/WebProgTests/gpeasy.lan/"  
        php_admin_value upload_tmp_dir "M:/USER/TOM/WebProgTests/gpeasy.lan/tmp"  
        php_admin_value session.save_path "M:/USER/TOM/WebProgTests/gpeasy.lan/sessions"  
  
  
    </Directory>  
  
    ErrorLog "M:/USER/TOM/WebProgTests/gpeasy.lan/logs/error.log"  
    CustomLog "M:/USER/TOM/WebProgTests/gpeasy.lan/logs/access.log" combined  
  
</VirtualHost>  

Wesentlich sind hier eigentlich nur die speziellen PHP-Konfigurationen:

Ich lege grundsätzlich für jeden vHost eigene Verzeichnisse für tmp, sessions, logs, data, includes, etc. _außerhalb_ der Document Root an und setze ein open_basedir. Da ich PHP immer noch als Modul des Apachen benutze, sind so die einzelnen Domains gegeneinander abgeschirmt. Ein Zugriff per Script auf die Daten einer anderen Domain ist so nicht möglich.

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
 ☻_
/▌
/ \ Nur selber lernen macht schlau
http://restaurant-zur-kleinen-kapelle.de