Alexander (HH): Vielen Dank! Eine Frage wäre da noch...

Beitrag lesen

Moin Moin!

Wie kann ich aber im Apache für Subdomains, die ich nicht nutze, angeben dass diese nicht existieren?

Falsche Stelle. NXDOMAIN vom DNS wäre in dem Fall die richtige Antwort.

Ja, ich weiß, das geht mit Strato nicht (so einfach).

Default-VHost (den ersten in der httpd.conf) so konfigurieren, dass er eine brauchbare Fehlerseite ausgibt, idealerweise vielleicht mit Status 404.

Aus einem so konfigurierten Apache:

--- httpd.conf ---
...

Section 2: 'Main' server configuration

...
DocumentRoot "/srv/www/DEFAULT/htdocs"
...
<Directory "/srv/www/DEFAULT/htdocs">
    Options ...
    AllowOverride ...
    Order allow,deny
    Allow from all
</Directory>
...

Section 3: Virtual Hosts

NameVirtualHost *:80

<VirtualHost *:80>
    DocumentRoot /srv/www/DEFAULT/htdocs
</VirtualHost>

include conf/vhosts/*.conf
--- Ende ---

Automatisches Umleiten aller Tippfehler- und Tippfaulheits-Domains:
--- conf/vhosts/redirects-www.example.com.conf ---
<VirtualHost *:80>
        ServerName example.com
        ServerAlias example.de
        ServerAlias www.example.de
        ServerAlias www.exampel.de
        ServerAlias exampel.de

ErrorLog ...
        CustomLog ...

Redirect permanent / http://www.example.com/
</VirtualHost>
--- Ende ---

"Richtiger" Webserver www.example.com:
--- conf/vhosts/www.example.com.conf ---
<VirtualHost *:80>
        ServerName www.example.com

DocumentRoot /srv/www/www.example.com/htdocs
        <Directory /srv/www/www.example.com/htdocs>
                Options ...
                AllowOverride ...
                Order allow,deny
                Allow from all
        </Directory>

ErrorLog ...
        CustomLog ...

FastCGIExternalServer ...
</VirtualHost>
--- Ende ---

Noch ein "richtiger Server" für eine Subdomain:
--- conf/vhosts/presse.getpraised.com.conf ---
<VirtualHost *:80>
        ServerName blafasel.example.com
        ServerAlias www.blafasel.example.com

DocumentRoot /srv/www/blafasel.example.com/htdocs
        <Directory /srv/www/blafasel.example.com/htdocs>
                Options ...
                AllowOverride ...
                Order allow,deny
                Allow from all
                IndexOptions ...
                HeaderName ...
                ReadmeName ...
        </Directory>

ErrorLog ...
        CustomLog ...
</VirtualHost>
--- Ende ---

In /srv/www/DEFAULT/htdocs liegt eine index.html, die liefert (mit Status 200) einen freundlichen Hinweis, dass für diese URL kein Server konfiguriert sei, und dass man vielleicht doch besser bei www.example.com vorbeischauen sollte.

Alexander

--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".