Verzeichnisstruktur und Virtual Hosts

Apache, Lighttpd, nginx, Cherokee
dudemeister
Posts: 12
Joined: 2009-02-17 17:27

Verzeichnisstruktur und Virtual Hosts

Post by dudemeister » 2009-03-17 14:25

Hallo,

die Verzeichnisstruktur meiner WebInhalte sieht so aus

/var/www/<my_site>/
/var/www/phpmyadmin (SymLink)

Ich habe fuer <my_site> einen VirtualHost auf Basis der Default Apache VirtualHost Datei in /etc/apache2/sites-available/000-default erstellt. Also, DocumentRoot /var/www/<mysite>/ anstatt /var/www/ und ServerName <my_domain>. Danach habe ich die Default Seite deaktiviert. Meine Fragen:

1. Wie kann ich es einrichten, dass http://<IP> nicht die Seiteninhalte von <my_site> anzeigt - oder ist das "un-natuerlich".
2. http://<IP>/phpmyadmin geht natuerlich seit Abschalten der Default Seite nicht mehr. Soll ich jetzt nur fuer phpmyadmin einen extra VirtualHost einrichten oder vielleicht doch die DefaultSeite einschalten? Letzteres erscheint mir nicht gut, da ich dann die Inhalte von <my_site> auch ueber http://<IP>/<my_site> aufrufen koennte. Vielleicht kann man bestimmte Unterverzeichnisse der DefaultSite explizit excluden :?

Danke,

David


Die Virtual Host Datei fuer <my_site>

Code: Select all

NameVirtualHost *
<VirtualHost *>
   ServerAdmin webmaster@localhost
   ServerName  www.<my_domain>
          ServerAlias <my_domain>
   
   DocumentRoot /var/www/<my_site>/
   <Directory /var/www/<my_site>/>
      Options Indexes FollowSymLinks MultiViews
      AllowOverride All
      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
   ServerSignature On

    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>

EdRoxter
Posts: 483
Joined: 2006-01-06 03:23
Location: Neben Bonn

Re: Verzeichnisstruktur und Virtual Hosts

Post by EdRoxter » 2009-03-17 18:54

Leg doch die Default-Site auf ein anderes DocumentRoot.

Erstelle /var/www/default, mach da eine index.htm rein, die irgendwas à la "Hier gibt's nix." besagt und pack phpMyAdmin in das Unterverzeichnis mit rein, also nach /var/www/default/phpmyadmin. Oder alternativ

Code: Select all

cd /var/www/default
ln -s /usr/share/phpmyadmin phpmyadmin


Dann in der /etc/apache2/sites-available/default ein

Code: Select all

DocumentRoot /var/www/default

anstelle von /var/www sowie ein

Code: Select all

a2ensite default
/etc/init.d/apache2 reload

auf der Konsole und schon hast du's, wie du's brauchst - wenn ich das richtig verstanden habe.

dudemeister
Posts: 12
Joined: 2009-02-17 17:27

Re: Verzeichnisstruktur und Virtual Hosts

Post by dudemeister » 2009-03-19 10:55

Hallo,

bombig, funktioniert so, wie ich es wollte. Danke.

Ich habe noch 2 andere Fragen.

1. Warum laeuft webmin unabhaengig davon, welche VirtualHosts definiert sind auf https://<IP>:100000 - ich sehe das nirgendwo unter /sites-available oder /sites-enabled definiert?

2. Unten ein Ausschnitt aus dem (unveraenderten) Apache default VirtualHost, wozu sind die Deklarationen zum Root Directory "/" gut wenn der DocumentRoot bei /var/www liegt?

Code: Select all

...
   DocumentRoot /var/www/
   <Directory />
      Options FollowSymLinks
      AllowOverride None
   </Directory>
   <Directory /var/www/>
      Options Indexes FollowSymLinks MultiViews
      AllowOverride None
      Order allow,deny
      allow from all
      # This directive allows us to have apache2's default start page
                # in /apache2-default/, but still have / go to the right place
                # RedirectMatch ^/$ /apache2-default/
   </Directory>
...


Danke,

David

EdRoxter
Posts: 483
Joined: 2006-01-06 03:23
Location: Neben Bonn

Re: Verzeichnisstruktur und Virtual Hosts

Post by EdRoxter » 2009-03-19 11:40

Dudemeister wrote:2. Unten ein Ausschnitt aus dem (unveraenderten) Apache default VirtualHost, wozu sind die Deklarationen zum Root Directory "/" gut wenn der DocumentRoot bei /var/www liegt?

Das sind Default-Einstellungen, die dann zum Tragen kommen, wenn ein anderer VHost die betreffenden Direktiven nicht selbst eingestellt hat.

Code: Select all

<Directory />

gilt für / sowie alle Unterverzeichnisse davon. Also quasi eine Art Fallback, falls man sich bei VHosts mal in der Konfiguration verfrickelt.

Ist aber generell überflüssig, wenn man die anderen VHosts sauber konfiguriert hat.

dudemeister
Posts: 12
Joined: 2009-02-17 17:27

Re: Verzeichnisstruktur und Virtual Hosts

Post by dudemeister » 2009-11-10 00:59

Hallo,

sorry, muss nach so langer Zeit nochmal den Thread ausgraben. Ich bekomme partout nicht die eine Seite zum laufen. Verzeichnisstruktur sieht so aus:

Code: Select all

var/www/
  apache2-default
  some_site
  another_site


some_site hat einen veritablen ServerName und ServerAlias - dagegen habe ich fuer another_site einfach die Standard /etc/apache2/sites-available/apache2-default genommen und in als <Directory> /var/www/apache2-default/ durch /var/www/another_site ersetzt (siehe unten).

a2ensite another_site und invoke invoke-rc.d reload gemacht - aber es tut sich nichts, er findet <Server_IP>/another_site nicht.

Alles was unter apache2-default liegt funktioniert. An welcher Stelle habe ich etwas falsch gemacht?

Code: Select all

NameVirtualHost *
<VirtualHost *>
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www/another_site/
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/another_site/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
                # This directive allows us to have apache2's default start page
                # in /apache2-default/, but still have / go to the right place
                # RedirectMatch ^/$ /apache2-default/
        </Directory>

        ...



... Die RedirectMatch Direktive ist in der apache2-default auch auskommentiert.

Danke schonmal fuer die Hilfe,


/David

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Verzeichnisstruktur und Virtual Hosts

Post by Roger Wilco » 2009-11-10 01:30

dudemeister wrote:dagegen habe ich fuer another_site einfach die Standard /etc/apache2/sites-available/apache2-default genommen und in als <Directory> /var/www/apache2-default/ durch /var/www/another_site ersetzt (siehe unten).

Und was soll das deiner Meinung nach bringen?

dudemeister wrote:a2ensite another_site und invoke invoke-rc.d reload gemacht - aber es tut sich nichts, er findet <Server_IP>/another_site nicht.

Ein Symlink auf "another_site" im DocumentRoot des Default-VirtualHosts existiert?

dudemeister
Posts: 12
Joined: 2009-02-17 17:27

Re: Verzeichnisstruktur und Virtual Hosts

Post by dudemeister » 2009-11-10 13:05

Hallo RogerWilco,

danke fuer die schnelle Antwort.

roger wilco wrote:
dudemeister wrote:dagegen habe ich fuer another_site einfach die Standard /etc/apache2/sites-available/apache2-default genommen und in als <Directory> /var/www/apache2-default/ durch /var/www/another_site ersetzt (siehe unten).

Und was soll das deiner Meinung nach bringen?


War vielleicht nicht klar ausgedrueckt, ich habe 2 VirtualHost Konfigurationsdateien - eine fuer die default und eine fuer another_site, die inhaltlich genau wie die fuer die default aussieht, nur das eben <Directory> entsprechend zu /var/www/another_site pointed.

dudemeister wrote:a2ensite another_site und invoke invoke-rc.d reload gemacht - aber es tut sich nichts, er findet <Server_IP>/another_site nicht.

Ein Symlink auf "another_site" im DocumentRoot des Default-VirtualHosts existiert?


... mhm, nee - dachte, dafuer habe ich die 2. Konfigurationsdatei angelegt.
Last edited by dudemeister on 2009-11-10 13:06, edited 1 time in total.

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Verzeichnisstruktur und Virtual Hosts

Post by Roger Wilco » 2009-11-10 14:07

dudemeister wrote:... mhm, nee - dachte, dafuer habe ich die 2. Konfigurationsdatei angelegt.

Nein. Der Default-VirtualHost ist die erste Definition, die in der Konfiguration gefunden wird. Alle nachfolgenden Definitionen haben darauf keinen Einfluss mehr.

dudemeister
Posts: 12
Joined: 2009-02-17 17:27

Re: Verzeichnisstruktur und Virtual Hosts

Post by dudemeister » 2009-11-11 11:32

roger wilco wrote:
dudemeister wrote:... mhm, nee - dachte, dafuer habe ich die 2. Konfigurationsdatei angelegt.

Nein. Der Default-VirtualHost ist die erste Definition, die in der Konfiguration gefunden wird. Alle nachfolgenden Definitionen haben darauf keinen Einfluss mehr.


Ok, das wusste ich nicht. Danke, es funktioniert jetzt.

/David