Maresa P.: Apache: Probleme mit Virtual Host

Hallo,

mein Apache2 Server (auf RedHat 9.0) ist so konfiguriert, dass er meherer namebased virtual hosts verwaltet:

httpd.conf:

NameVirtualHost *:80

<VirtualHost *:80>
ServerName domain1.info
ServerAlias  www.domain1.info
DocumentRoot /home/httpd/vhosts/domain1/httpdocs
</VirtualHost>

<VirtualHost *:80>
ServerName domain2.de
ServerAlias  www.domain2.de domain3.info www.domain3.info
DocumentRoot /home/httpd/vhosts/domain2/httpdocs
</VirtualHost>

mit dem 2. virtual Host (domain2.de) funtkioniert alles super. Beim Aufruf der Domain wird der Inhalt aus /home/httpd/vhosts/domain2/httpdocs angezeigt.

Probleme habe ich jedoch mit dem 1. Virtual Host! Beim Aufruf von domain1.info (oder jeder anderen, nicht im virtual2 enthaltenen domain) bekomme ich eine Apache Seite:

Test Page
   [...]

If you are the administrator of this website:
   You may now add content to this directory, and replace this page.
   Note that until you do so, people visiting your website will see  this page, and not your content.

If you have upgraded from Red Hat Linux 6.2 and earlier, then   you
   are seeing this page because the default DocumentRoot set
   in /etc/httpd/conf/httpd.conf has changed. Any subdirectories
   which existed under /home/httpd should now be moved
   to /var/www.
   Alternatively, the contents of /var/www can be moved
   to /home/httpd, and the configuration file can be updated
   accordingly.

[...]

Das Verzeichnis /home/httpd/vhosts/domain1/httpdocs existiert und in ihm gibt es auch eine index.html

Der einzige Unterschied ist, dass das Verzeichnis von domain2.de ursprünglich von einem Konfigurationstool (Plesk) angelegt wurde. Das Verzeichnis von domain1.info habe ich manuell als root angelegt, jedoch die Eigentümer und Eigentümergruppe entsprechend angepasst.

Nun mein Fragen:

  • Woran kann es liegen, dass domain2.de nicht den richtigen Inhalt liefert?
  • Muss ich das neu angelegt Verzeichnis von domain2.de noch irgendwo in einer anderen Konfigurationsdaten hinzufügen?
  • Wie bekomme ich domain2.de zum laufen?

Vielen Dank für Euere Hilfe!

Maresa P.

  1. _korrektur_

    Nun mein Fragen:

    • Woran kann es liegen, dass domain1.info nicht den richtigen Inhalt liefert?
    • Muss ich das neu angelegt Verzeichnis von domain1.info noch irgendwo in einer anderen Konfigurationsdaten hinzufügen?
    • Wie bekomme ich domain1.info zum laufen?
    1. hallo Maresa,

      • Woran kann es liegen, dass domain1.info nicht den richtigen Inhalt liefert?

      Im Prinzip ist diese Frage bereits in deinem vorherigen Thread zum selben Thema beantwortet worden. Der Fehler liegt hier:

      NameVirtualHost *:80
        <VirtualHost *:80>

      Mach daraus bitte

      NameVirtualHost lokale IP-Adresse
        <VirtualHost lokale IP-Adresse>

      Den port kannst du weglassen, wenn es sowieso port 80 sein soll. Du kannst mehrere (namensbasierte) virtuelle hosts auf diese Weise an dieselbe IP binden.

      • Muss ich das neu angelegt Verzeichnis von domain1.info noch irgendwo in einer anderen Konfigurationsdaten hinzufügen?

      Nein, das ist nicht nötig. Aber in /etc/hosts solltest du den Domainnamen eintragen.

      Grüße aus Berlin

      Christoph S.

      1. Hallo,

        Angespornt durch dieses Posting wollte ich jetzt doch noch mal versuchen einen virtual host hinzubekommen.

        Die ip Adresse meiner Netzwerkkarte lautet 192.168.0.3

        Das habe ich in die httpd.conf reingeschrieben
        -------------------------
        NameVirtualHost 192.168.0.3

        VirtualHost example:

        Almost any Apache directive may go into a VirtualHost container.

        <VirtualHost *>
            ServerName localhost
            DocumentRoot /var/www/
        </VirtualHost>
        <VirtualHost 192.168.0.3>
         ServerName jeenas-home5
         DocumentRoot /var/www/open/Webs/jeenas-home5/
        </virtualHost>
        -------------------------

        Und das in die /etc/hosts
        -------------------------
        127.0.0.1       localhost
        192.168.0.3     jeenas-home5    jeenas-home5

        The following lines are desirable for IPv6 capable hosts

        (added automatically by netbase upgrade)

        ::1     ip6-localhost ip6-loopback
        fe00::0 ip6-localnet
        ff00::0 ip6-mcastprefix
        ff02::1 ip6-allnodes
        ff02::2 ip6-allrouters
        ff02::3 ip6-allhosts

        -------------------------

        Wenn ich jetzt http://jeenas-home5/ in den Browser eingebe dann bekomme ich die Seite von /var/www/ und nicht /var/www/open/Webs/jeenas-home5/

        Also mache ich auf jeden fall irgendetwas falsch, aber was?

        Grüße
        Jeena Paradies

        --
        Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
        http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
        Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
        http://jeenaparadies.de/artikel/kinderschlagen/
        Jeenas Bannertauschportal; selbstgemacht ;-)
        http://jeenasbannerbude.de
        1. hi,

          Das habe ich in die httpd.conf reingeschrieben
          NameVirtualHost 192.168.0.3
          <VirtualHost *>
          Also mache ich auf jeden fall irgendetwas falsch, aber was?

          Du könntest es bereits an meinem "Zusammenschnitt" deines postings erkennen. Im <VirtualHost>-Container muß natürlich dieselbe IP stehen, die du bei NameVirtualHost angegeben hast, in deinem Fall also 192.168.0.3 und auf gar keinen Fall darf da einfach der Platzhalter * stehenbleiben.

          Grüße aus Berlin

          Christoph S.

          1. Hallo,

            Du könntest es bereits an meinem "Zusammenschnitt" deines postings erkennen. Im <VirtualHost>-Container muß natürlich dieselbe IP stehen, die du bei NameVirtualHost angegeben hast, in deinem Fall also 192.168.0.3 und auf gar keinen Fall darf da einfach der Platzhalter * stehenbleiben.

            So jetzt habe ich ihn endlich wieder am laufen, der wollte nämlich jetzt gerade gar nicht mehr. Ich habe das jetzt verändert, was aber nichts daran verändert hat dass ich beim aufruf von http://jeenas-home5/ immer noch die gleiche Seite angezeigt bekomme wie http://localhost/ also die /var/www/ anstatt /var/www/open/Webs/jeenas-home5/ Es ist auch egal ob ich den Slash dahinter weglasse oder nicht.

            -------------------------------------------------

            #/etc/hosts
            127.0.0.1       localhost
            192.168.0.3     debian.jeena    debian
            192.168.0.3     jeenas-home     jeenas-home5

            #/etc/apache/httpd.conf

            ------ viel Zeugs --------

            ServerName localhost
            DocumentRoot /var/www

            ------ viel Zeugs --------

            NameVirtualHost 192.168.0.3
            <VirtualHost 192.168.0.3>
                ServerName localhost
                DocumentRoot /var/www
            </VirtualHost>
            <VirtualHost 192.168.0.3>
             ServerName jeenas-home5
             DocumentRoot /var/www/open/Webs/jeenas-home5
            </VirtualHost>

            Grüße
            Jeena Paradies

            --
            Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
            http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
            Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
            http://jeenaparadies.de/artikel/kinderschlagen/
            Jeenas Bannertauschportal; selbstgemacht ;-)
            http://jeenasbannerbude.de
            1. morgens,

              So jetzt habe ich ihn endlich wieder am laufen, der wollte nämlich jetzt gerade gar nicht mehr.

              Oh. Was sagen deine logs dazu aus?

              Ich habe das jetzt verändert, was aber nichts daran verändert hat dass ich beim aufruf von http://jeenas-home5/ immer noch die gleiche Seite angezeigt bekomme wie http://localhost/ also die /var/www/ anstatt /var/www/open/Webs/jeenas-home5/

              Ich habe vorhin noch was vergessen. Es ist ziemlicher Unsinn, einen virtualHost "localhost" zu nennen. "localhost" gibt es immer, der _darf_ gar kein eigener virtualHost sein. Gib deinem ersten virtualHost einen anderen Namen.

              #/etc/hosts
              127.0.0.1       localhost
              192.168.0.3     debian.jeena    debian
              192.168.0.3     jeenas-home     jeenas-home5

              Das sieht nicht so richtig gut aus. Mach mal daraus:
               127.0.0.1       localhost
               192.168.0.3     jeenas-home5

              Unter Umständen hast du "weiter oben" in der httpd.conf noch irgendwas verkehrt eingetragen.

              Grüße aus Berlin

              Christoph S.

              1. Hallo,

                Das sieht nicht so richtig gut aus. Mach mal daraus:
                 127.0.0.1       localhost
                 192.168.0.3     jeenas-home5

                Ok das habe ich jetzt genau so gemacht.

                Hier jetzt mal meine httpd.conf ohne Kommentare http://jeenaparadies.servebeer.com/open/selfbilder/httpd-conf.txt

                Grüße
                Jeena Paradies

                --
                Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                http://jeenaparadies.de/artikel/kinderschlagen/
                Jeenas Bannertauschportal; selbstgemacht ;-)
                http://jeenasbannerbude.de
                1. hallo,

                  Das sieht nicht so richtig gut aus. Mach mal daraus:
                   127.0.0.1       localhost
                   192.168.0.3     jeenas-home5
                  Ok das habe ich jetzt genau so gemacht.

                  Aber du schreibst nicht, ob es damit funktioniert hat.

                  Es gibt noch etwas, was ich als so selbstverständlich angesehen hbe, daß ich es nicht geschrieben habe: dein Rechner selbst muß bei dieser Konstruktion natürlich diese IP 192.168.0.3 haben. Ob sie vorhanden ist, zeigt dir "ifconfig" oder "ip addr".

                  Hier jetzt mal meine httpd.conf ohne Kommentare http://jeenaparadies.servebeer.com/open/selfbilder/httpd-conf.txt

                  Wie vermutet, steht da als ServerName bereits localhost drin und als DoxumentRoot /var/www. Damit ist ein virtualHost mit dem Namen "localhost" ganz und gar überflüssig. Sonst gibts an deiner httpd.conf nicht viel auszusetzen, sie ist ein wenig zu lang und enthält Teile, die du bestimmt nicht brauchst. Etwas unsicher bin ich natürlich, was du mit der allerletzten Zeile noch für eine /etc/apache/conf.d einbinden möchtest und ob du das überhaupt brauchst.

                  Grüße aus Berlin

                  Christoph S.

                  1. Hallo,

                    Aber du schreibst nicht, ob es damit funktioniert hat.

                    Nein leider nicht :/

                    Es gibt noch etwas, was ich als so selbstverständlich angesehen hbe, daß ich es nicht geschrieben habe: dein Rechner selbst muß bei dieser Konstruktion natürlich diese IP 192.168.0.3 haben. Ob sie vorhanden ist, zeigt dir "ifconfig" oder "ip addr".

                    Das hat er. Beweiß am Rechner meiner Frau ist mein Rechner als Gateway eingetragen mit 192.168.0.3

                    eth1      Protokoll:Ethernet  Hardware Adresse 00:20:AF:4A:AB:C6
                              inet Adresse:192.168.0.3  Bcast:192.168.0.255  Maske:255.255.255.0
                              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
                              RX packets:1439 errors:0 dropped:0 overruns:0 frame:0
                              TX packets:1647 errors:0 dropped:0 overruns:0 carrier:0
                              Kollisionen:0 Sendewarteschlangenlänge:100
                              RX bytes:253820 (247.8 KiB)  TX bytes:1202628 (1.1 MiB)
                              Interrupt:5 Basisadresse:0x220

                    Wie vermutet, steht da als ServerName bereits localhost drin und als DoxumentRoot /var/www. Damit ist ein virtualHost mit dem Namen "localhost" ganz und gar überflüssig.

                    Den habe ich ja jetzt auch ganz weggelassen.

                    Sonst gibts an deiner httpd.conf nicht viel auszusetzen, sie ist ein wenig zu lang und enthält Teile, die du bestimmt nicht brauchst.

                    Ja das stimmt bestimmt, aber ich bin noch unsicher was ich alles einfach weglassen kann, und bisher hat ja alles gut funktioniert.

                    Etwas unsicher bin ich natürlich, was du mit der allerletzten Zeile noch für eine /etc/apache/conf.d einbinden möchtest und ob du das überhaupt brauchst.

                    debian:/etc/apache/conf.d# ls
                    phpmyadmin

                    Das wurde warscheinlich bei der Installation von phpmyadmin automatisch reingeschrieben.

                    Da gibt es seit dem ich da jetzt wieder an den confs ein wenig rumgespielt habe wieder mal diese Alte abnormalität dass wenn ich eine PHP Seite aufrufe dann wird sie nicht ausgeliefert. Das aberwitzige dabei ist aber dass wenn ich http://localhost/phpmyadmin/ aufrufe alles ganz normal funktioniert. Das besteht ja auch aus lauter php Seiten. Es gibt auch keinen 500er oder 404er es passiert einfach nichts. Es wird auch nichts in die error.log geschrieben.

                    Grüße
                    Jeena Paradies

                    --
                    Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                    http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                    Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                    http://jeenaparadies.de/artikel/kinderschlagen/
                    Jeenas Bannertauschportal; selbstgemacht ;-)
                    http://jeenasbannerbude.de
                    1. hallo,

                      Aber du schreibst nicht, ob es damit funktioniert hat.
                      Nein leider nicht :/

                      Na gut. Dann schau mal bitte in deine Modul-Liste unter /etc/apache/modules.conf, ob dort mod_vhost_alias oder etwas Ähnliches aktiviert ist. Das brauchst du.

                      Das hat er. Beweiß am Rechner meiner Frau ist mein Rechner als Gateway eingetragen mit 192.168.0.3

                      Der Eintrag kann mir völlig wurscht sein, der Beweis existiert erst, wenn deine Frau damit auch online gehen kann ;-)

                      Da gibt es seit dem ich da jetzt wieder an den confs ein wenig rumgespielt habe wieder mal diese Alte abnormalität dass wenn ich eine PHP Seite aufrufe dann wird sie nicht ausgeliefert.

                      Kann auch nicht. Dazu fehlt in deiner httpd.conf noch folgendes:
                      <IfModule mod_php4.c>
                        AddType application/x-httpd-php .php
                        AddType application/x-httpd-php .php4
                        AddType application/x-httpd-php-source .phps
                      </IfModule>
                      Außerdem muß dann auch mod_php4 in der Modul-Liste aktiviert sein.

                      Das aberwitzige dabei ist aber dass wenn ich http://localhost/phpmyadmin/ aufrufe alles ganz normal funktioniert.

                      Das liegt am Konzept von phpmyadmin.

                      Grüße aus Berlin

                      Christoph S.

                      1. Hallo,

                        Der Eintrag kann mir völlig wurscht sein, der Beweis existiert erst, wenn deine Frau damit auch online gehen kann ;-)

                        Grr, das kann sie :)

                        Kann auch nicht. Dazu fehlt in deiner httpd.conf noch folgendes:
                        <IfModule mod_php4.c>
                          AddType application/x-httpd-php .php
                          AddType application/x-httpd-php .php4
                          AddType application/x-httpd-php-source .phps
                        </IfModule>

                        Ok dass wusste ich nicht ich dachte dass

                        <IfModule mod_mime.c>
                            AddType application/x-httpd-php .php
                          </IfModule>

                        das schon erledigt.

                        Außerdem muß dann auch mod_php4 in der Modul-Liste aktiviert sein.
                        Na gut. Dann schau mal bitte in deine Modul-Liste unter /etc/apache/modules.conf, ob dort mod_vhost_alias oder etwas Ähnliches aktiviert ist. Das brauchst du.

                        Daran liegt es wohl. Beides fehlt bei mir. Ich habe auch das probiert reinzuschreiben

                        LoadModule mod_vhost_alias /usr/lib/apache/1.3/mod_vhost_alias.so
                          LoadModule mod_php4 /usr/lib/apache/1.3/mod_php4.so

                        aber

                        debian:/etc/apache# apachectl configtest
                        Syntax error on line 33 of /etc/apache/modules.conf:
                        Can't locate API module structure `mod_vhost_alias' in file /usr/lib/apache/1.3/mod_vhost_alias.so: /usr/sbin/apache: undefined symbol: mod_vhost_alias

                        und wenn ich das auskommentiere dann kommt

                        debian:/etc/apache# apachectl configtest
                        Syntax error on line 34 of /etc/apache/modules.conf:
                        Cannot load /usr/lib/apache/1.3/mod_php4.so into server: /usr/lib/apache/1.3/mod_php4.so: cannot open shared object file: No such file or directory

                        Also liegen diese *.so Dateien irgendwo anders bei mir?

                        Das liegt am Konzept von phpmyadmin.

                        Ach so.

                        Grüße
                        Jeena Paradies

                        --
                        Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                        http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                        Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                        http://jeenaparadies.de/artikel/kinderschlagen/
                        Jeenas Bannertauschportal; selbstgemacht ;-)
                        http://jeenasbannerbude.de
                        1. hi,

                          ich dachte dass
                            <IfModule mod_mime.c>
                              AddType application/x-httpd-php .php
                            </IfModule>
                          das schon erledigt.

                          Nein. mod_mime ist zwar ziemlich "mächtig", aber hier brauchst du tatsächlich mod_php. Auf einer LINUX-Kiste ist es leicht, das Modul zu nehmen und nicht die CGI-Variante, die ich unter Windows bevorzuge.

                          Syntax error on line 33 of /etc/apache/modules.conf:
                          Can't locate API module structure `mod_vhost_alias' in file /usr/lib/apache/1.3/mod_vhost_alias.so: /usr/sbin/apache: undefined symbol: mod_vhost_alias

                          Warum hast du eigentlich einen Apache 1.3.x laufen? Für Debian kannst du dir von http://ftp.de.debian.org/debian/pool/main/a/apache2/ einen Apache 2.0.49 holen.

                          Syntax error on line 34 of /etc/apache/modules.conf:
                          Cannot load /usr/lib/apache/1.3/mod_php4.so into server
                          Also liegen diese *.so Dateien irgendwo anders bei mir?

                          Nein, wahrscheinlich hast du sie gar nicht.

                          Ich weiß nicht genau, _wie_ du dir deinen Apache installiert hast. Unter Umständen wird dir nichts andres übrigbleiben, als ihn nochmal neu selber zu kompilieren.

                          Jedenfalls haben wir jetzt erstmal geklärt, warum dein virtualHost nicht funktionieren kann und PHP scheinbar nicht funktioniert.

                          Grüße aus Berlin

                          Christoph S.

                          1. Hallo,

                            Warum hast du eigentlich einen Apache 1.3.x laufen? Für Debian kannst du dir von http://ftp.de.debian.org/debian/pool/main/a/apache2/ einen Apache 2.0.49 holen.

                            Meinst du ich soll das wirklich machen? Ich habe irgenwo von dir aussagen irgendwann gelesen dass da einige sachen noch nicht gingen mit dem 2.0er

                            Nein, wahrscheinlich hast du sie gar nicht.

                            Äm PHP hat doch bis gestern wunderbar funktioniert.

                            Ich weiß nicht genau, _wie_ du dir deinen Apache installiert hast. Unter Umständen wird dir nichts andres übrigbleiben, als ihn nochmal neu selber zu kompilieren.

                            Phuh, ne ne, damit habe ich nur schlechte Erfahrungen gemacht, und auf meinem 300 Mhz Celeron dauert das dann warscheinlich zwei Tage. Dann installiere ich mir jetzt doch lieber den 2.0er den du oben vorgeschlagen hast.

                            Jedenfalls haben wir jetzt erstmal geklärt, warum dein virtualHost nicht funktionieren kann und PHP scheinbar nicht funktioniert.

                            Ja einen wichtigen Schritt sind wir dann auf jeden fall schon mal weiter, vielen Dank übrigens für deine Hilfe.

                            Grüße
                            Jeena Paradies

                            --
                            Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                            http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                            Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                            http://jeenaparadies.de/artikel/kinderschlagen/
                            Jeenas Bannertauschportal; selbstgemacht ;-)
                            http://jeenasbannerbude.de
                            1. Hallo,

                              Ich habe den 1.3.x weil er installiert wird wenn man apt-get install apache macht.

                              Bevor ich jetzt alles per Hand mache habe ich mal geschaut ob ich den 2er nicht doch per apt-get installieren kann und es geht anscheinend:

                              ---------------------
                              debian:/etc/apache# apt-get install apache2
                              Paketlisten werden gelesen... Fertig
                              Abhängigkeitsbaum wird aufgebaut... Fertig
                              Pakete apache2 ist ein virtuelles Pakete, das bereitgestellt wird von:
                                apache2-mpm-worker 2.0.49-1
                                apache2-mpm-threadpool 2.0.49-1
                                apache2-mpm-prefork 2.0.49-1
                                apache2-mpm-perchild 2.0.49-1
                              Sie sollten eines explizit zum Installieren auswählen.
                              E: Paket apache2 hat keinen Installationskandidaten
                              ---------------------

                              Welchen sollte ich dann deiner Meinung nach nehmen, oder ist es egal? Soll ich den 1.3.x erst einmal deinstallieren damit die sich nicht in die Quere kommen? (Aber ich glaube das macht debian sowieso dann automatisch)

                              Grüße
                              Jeena Paradies

                              --
                              Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                              http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                              Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                              http://jeenaparadies.de/artikel/kinderschlagen/
                              Jeenas Bannertauschportal; selbstgemacht ;-)
                              http://jeenasbannerbude.de
                              1. hallo,

                                Welchen sollte ich dann deiner Meinung nach nehmen, oder ist es egal? Soll ich den 1.3.x erst einmal deinstallieren damit die sich nicht in die Quere kommen? (Aber ich glaube das macht debian sowieso dann automatisch)

                                Nein, er wird nicht automatisch deinstalliert, es sei denn, du "befiehlst" es. Wenn du genügend Platz auf deiner Platte hast, kannst du beide Versionen nebeneinander installiert lassen und sogar beide laufen lassen. Du mußt dich bloß entscheiden, welcher als "default" als Systemdienst hochgefahren werden soll. In die Quere kommen können sie sich trotzdem, da sie wahrschenlich auf denselben port zugreifen möchten. Dann setzt du eben einen auf einen anderen port.

                                Grüße aus Berlin

                                Christoph S.

                                1. Hallo,

                                  Nein, er wird nicht automatisch deinstalliert, es sei denn, du "befiehlst" es.

                                  Jetzt habe ich einfach den 1.3er runtergeschmissen und den 2er installiert.

                                  So weit so gut. Sieht jetzt alles ein wenig anders aus, vor allem habe ich keine modules.conf mehr und die httpd.conf ist leer.

                                  Ich habe jetzt mal die # von hier weggemacht:

                                  AddType application/x-httpd-php .php

                                  AddType application/x-httpd-php-source .phps

                                  sieht also so aus in der apache2.conf aus:

                                  AddType application/x-httpd-php .php
                                  AddType application/x-httpd-php-source .phps

                                  und in die leere httpd.conf das reingeschrieben:

                                  <IfModule mod_php4.c>
                                    AddType application/x-httpd-php .php
                                    AddType application/x-httpd-php .php4
                                    AddType application/x-httpd-php-source .phps
                                  </IfModule>

                                  Aber wo ich jetzt dieses LoadModule reinschreiben soll kapiere ich nicht wirklich. Ich glaube dass dafür jetzt diese Verzeichnisse zuständig sind:

                                  debian:/etc/apache2/mods-available# ls
                                  actions.load      auth_ldap.load  cgi.load      disk_cache.load  headers.load  mem_cache.load      proxy_ftp.load   ssl.conf        usertrack.load
                                  asis.load         cache.load      dav_fs.conf   expires.load     imap.load     mime_magic.conf     proxy_http.load  ssl.load        vhost_alias.load
                                  auth_anon.load    cern_meta.load  dav_fs.load   ext_filter.load  include.load  mime_magic.load     proxy.load       suexec.load
                                  auth_dbm.load     cgid.conf       dav.load      ext-filter.load  info.load     proxy.conf          rewrite.load     unique_id.load
                                  auth_digest.load  cgid.load       deflate.load  file_cache.load  ldap.load     proxy_connect.load  speling.load     userdir.conf

                                  debian:/etc/apache2/mods-enabled# ls
                                  actions.load  cgi.load

                                  Da sie in der apache2.conf includiert werden. vhost_alias.load scheint ja das zu sein was ich brauche aber von PHP keine Spur.

                                  Grüße
                                  Jeena Paradies

                                  --
                                  Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                                  http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                                  Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                                  http://jeenaparadies.de/artikel/kinderschlagen/
                                  Jeenas Bannertauschportal; selbstgemacht ;-)
                                  http://jeenasbannerbude.de
                                  1. rehallo,

                                    vor allem habe ich keine modules.conf mehr und die httpd.conf ist leer.

                                    modules.conf brauchst du nicht unbedingt, es sei denn, du gibst das in der httpd.conf selbst so vor. Aber eine "leere" httpd.conf ist schlicht unmöglich.

                                    sieht also so aus in der apache2.conf

                                    Grmpf, was ist denn jetzt "apache2.conf"?

                                    Aber wo ich jetzt dieses LoadModule reinschreiben soll kapiere ich nicht wirklich

                                    Du bringst mich noch dazu, daß ich mir ein Debian hier installiere. Ich weiß nicht genau, was apt-get macht.

                                    Ich glaube dass dafür jetzt diese Verzeichnisse zuständig sind:
                                    debian:/etc/apache2/mods-available#
                                    debian:/etc/apache2/mods-enabled#
                                    Da sie in der apache2.conf includiert werden.

                                    Nach deinem Inhaltsverzeichnis ist das höchstwahrschenlich der Fall.

                                    vhost_alias.load scheint ja das zu sein was ich brauche

                                    Es sieht sehr danach aus.

                                    aber von PHP keine Spur.

                                    Richtig, weil das nicht zum Apache selbst gehört. Das müßte während der PHP-Installation mitgeliefert bzw. eingerichtet werden. Unter http://ftp.de.debian.org/debian/pool/main/p/php4/ findest du das PHP-Modul, beispielsweise als http://ftp.de.debian.org/debian/pool/main/p/php4/libapache2-mod-php4_4.3.4-4_i386.deb.

                                    Grüße aus Berlin

                                    Christoph S.

                                    1. Hallo,

                                      Grmpf, was ist denn jetzt "apache2.conf"?

                                      Das sieht fast aus wie die httpd.conf vom 1.3er

                                      Richtig, weil das nicht zum Apache selbst gehört. Das müßte während der PHP-Installation mitgeliefert bzw. eingerichtet werden. Unter http://ftp.de.debian.org/debian/pool/main/p/php4/ findest du das PHP-Modul, beispielsweise als http://ftp.de.debian.org/debian/pool/main/p/php4/libapache2-mod-php4_4.3.4-4_i386.deb.

                                      Ah super das klappt wunderbar, jetzt fehlt noch mysql und dann hab ich einen laufenden Apache 2.x. Leider sagt zur Zeit apt dass es keinen Installationskandidaten für mysql findet. Naja vielleicht ist das auch nur vorrübergehend (bei sid ja nicht ungewöhnlich)

                                      Grüße
                                      Jeena Paradies

                                      --
                                      Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                                      http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                                      Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                                      http://jeenaparadies.de/artikel/kinderschlagen/
                                      Jeenas Bannertauschportal; selbstgemacht ;-)
                                      http://jeenasbannerbude.de
                                      1. hi,
                                         gut, dann versuchen wir es jetzt zum Abschluß zu bringen.

                                        Grmpf, was ist denn jetzt "apache2.conf"?
                                        Das sieht fast aus wie die httpd.conf vom 1.3er

                                        Dann wird sie es wohl auch sein, und Debian geht hier eigene Wege und verteilt einen neuen Namen. Doof  -  weil ich dann wegen des längst überfälligen und nahezu fertigen Updates meines Feature-Artikels mir doch noch ein aktuelles Debian installieren muß.

                                        http://ftp.de.debian.org/debian/pool/main/p/php4/libapache2-mod-php4_4.3.4-4_i386.deb.

                                        Ah super das klappt wunderbar

                                        Siehst du ;-)

                                        jetzt fehlt noch mysql und dann hab ich einen laufenden Apache 2.x.

                                        Nö, den "laufenden Apache 2.0.49" hast du bereits.

                                        Leider sagt zur Zeit apt dass es keinen Installationskandidaten für mysql findet.

                                        Pffffff ... ich als Nicht-Debian-Benutzer darf dir die download-links anbietn, gelle? Nimm doch einfach irgendwas aus http://ftp.de.debian.org/debian/pool/main/m/mysql/  -  da hättest du aber auch selber drauf kommen können.

                                        Grüße aus Berlin

                                        Christoph S.

                                        1. Hallo,

                                          Ah super das klappt wunderbar
                                          Siehst du ;-)

                                          Grr, so ganz klappt das wohl noch nicht ich bekomme immer Fatal error: Call to undefined function: mysql_connect() wenn ich an die Datenbank will.
                                          --------------------
                                          5. "Fatal error: Call to undefined function: mysql_connect() in /var/www/html/smallbusiness/include/database/db_mysql.inc on line 9"

                                          PHP kennt in diesem Fall die Funktion mysql_connect() nicht. Das kann nur dann sein, wenn PHP ohne die MySQL Funktionen kompiliert wurde.
                                          --------------------
                                          Wer macht denn so was blödes und kompiliert PHP für ne Distri ohne MySQL Funktionen?

                                          Nö, den "laufenden Apache 2.0.49" hast du bereits.

                                          Wo du recht hast hast du recht :)

                                          Pffffff ... ich als Nicht-Debian-Benutzer darf dir die download-links anbietn, gelle? Nimm doch einfach irgendwas aus http://ftp.de.debian.org/debian/pool/main/m/mysql/  -  da hättest du aber auch selber drauf kommen können.

                                          Ja nur weiß ich dann immer nicht was von den vielen Sachen ich da runterladen soll, und das ist ja das schöne an apt dass ich mir nie darüber Gedanken machen musste. Das ist wohl auch der Grund warum ich von Suse auf Debian umgestiegen bin. Bei Suse hatte ich _immer_ irgendwelche Abhängigkeitsprobleme.

                                          Grüße
                                          Jeena Paradies

                                          --
                                          Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                                          http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                                          Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                                          http://jeenaparadies.de/artikel/kinderschlagen/
                                          Jeenas Bannertauschportal; selbstgemacht ;-)
                                          http://jeenasbannerbude.de
                                          1. seufz,

                                            PHP kennt in diesem Fall die Funktion mysql_connect() nicht

                                            Richtig. Ich weiß nicht, woher du diesen Funktionsnamen nimmst. Guckst du vielleicht mal auf http://de3.php.net/manual-lookup.php?pattern=mysql_connect()+&lang=de.

                                            Das kann nur dann sein, wenn PHP ohne die MySQL Funktionen kompiliert wurde.

                                            Nö. Einen solchen Funktionsnamen gibts halt nicht. Nimm eine Funktion, die es gibt.

                                            Grüße aus Berlin

                                            Christoph S.

                                            1. Hallo,

                                              Richtig. Ich weiß nicht, woher du diesen Funktionsnamen nimmst. Guckst du vielleicht mal auf http://de3.php.net/manual-lookup.php?pattern=mysql_connect()+&lang=de.

                                              Ich weiß es auch nicht, aber das habe ich bisher schon immer so gemacht, deshalb hat es mich gewunder dass es nicht funktioniert.

                                              Das kann nur dann sein, wenn PHP ohne die MySQL Funktionen kompiliert wurde.
                                              Nö. Einen solchen Funktionsnamen gibts halt nicht. Nimm eine Funktion, die es gibt.

                                              Also ich habe jetzt noch kräftig rumgesucht und folgendes gefunden:
                                              Quelle: http://lists.debian.org/debian-user-de/2000/10/msg00047.html
                                              ---------------------------
                                              wahrscheinlich wird das modul mysql.so nicht geladen.

                                              1. im php-script mit dl("mysql.so"); das modul laden
                                              2. oder in der datei /etc/php4/apache/php.ini in der sektion
                                                'Dynamic Extensions' die zeile 'extension=mysql.so' einkommentieren/
                                                 einfügen.
                                              ---------------------------

                                              Ich habe dann also die zeile 'extension=mysql.so' einkommentiert, aber nichts passierte. Danach habe ich dl("mysql.so"); versucht und es geht. Jetzt wäre es natürlich schön wenn ich es so wie früher hätte. Hast du da vielleicht eine Idee? Ansonsten muss ich halt in meine Scripte dl("mysql.so"); einfügen was mir aber komisch vorkommt.

                                              Grüße
                                              Jeena Paradies

                                              --
                                              Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                                              http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                                              Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                                              http://jeenaparadies.de/artikel/kinderschlagen/
                                              Jeenas Bannertauschportal; selbstgemacht ;-)
                                              http://jeenasbannerbude.de
                                              1. hi,

                                                das habe ich bisher schon immer so gemacht

                                                Nö, du hast das bisher immer anders gemacht.

                                                Schau dir einfach an, wie du den Befehl schreibst und wie er richtig aussehen sollte. Ich schreibe deine Form und die korrekte Form mal exakt untereinander:

                                                mysql_connect ()
                                                   mysql_connect()

                                                Siehst du es? Du hast einfach ein Leerzeichen drin, das da nicht reingehört.

                                                Grüße aus Berlin

                                                Christoph S.

                                                1. Hallo,

                                                  mysql_connect ()
                                                     mysql_connect()
                                                  Siehst du es? Du hast einfach ein Leerzeichen drin, das da nicht reingehört.

                                                  Das war wohl in dem Text aus dieser komischen FAQ drin den ich gefunden habe. Mittlerweile weiß ich dass es doch reinkompiliert wurde nur dass ich da jedes mal dl("mysql.so"); ausführen muss was ich bisher nicht musste.

                                                  Beim mir im Script sieht es so aus (per copy&paste):

                                                  $connect = mysql_connect($dburl, $dbbenutzer, $dbpasswort);
                                                  if ($connect == FALSE) mail($webmastermail, "Datenbankfehler", "Es ist ein Fehler auf jeenaparadies.de aufgetreten. \nDie Seite $seite ist betroffen. \nAlso mach dich an die Arbeit fauler Sack! \nDer Fehler lautet:\n ".mysql_error());

                                                  Grüße
                                                  Jeena Paradies

                                                  --
                                                  Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                                                  http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                                                  Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                                                  http://jeenaparadies.de/artikel/kinderschlagen/
                                                  Jeenas Bannertauschportal; selbstgemacht ;-)
                                                  http://jeenasbannerbude.de
                                              2. Hallo,

                                                1. oder in der datei /etc/php4/apache/php.ini in der sektion
                                                    'Dynamic Extensions' die zeile 'extension=mysql.so' einkommentieren/
                                                     einfügen.

                                                Maaan blöd bin ich!! Natürlich muss ich das in /etc/php4/apache2/php.ini ändern und nicht in /etc/php4/apache/php.ini

                                                Jetzt klappt auch das wunderbar.

                                                Ich danke dir vielmals für deine Hilfe Christoph. Ich habe heute sehr viel über meinen Apache gelernt, dank dir. Alleine hätte ich es wohl nicht gewagt diesen Schritt zu machen. Das letzte mal war es Zufall dass alles funktioniert hatte, aber jetzt weiß ich was ich wo eingestellt und installiert habe damit es funktioniert somit müsste es kein Problem sein das gleiche jetzt noch einmal hinzubekommen. (Vor allem weil auch dieser Thread für immer im Archiv für mich erreichbar sein wird)

                                                Jetzt endlich mache ich mich auf und versuche alleine einen Vhost hinzubekommen. Falls ich es bis morgen nicht schaffen sollte dann frage ich noch einmal nach. Danke noch mals.

                                                Grüße
                                                Jeena Paradies

                                                --
                                                Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                                                http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                                                Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                                                http://jeenaparadies.de/artikel/kinderschlagen/
                                                Jeenas Bannertauschportal; selbstgemacht ;-)
                                                http://jeenasbannerbude.de
                                                1. Hallo,

                                                  Vielleicht hilft dir das auch schon bevor du Debian installierst:
                                                  http://jeenaparadies.servebeer.com/open/selfbilder/apache2-debian-readme.txt

                                                  Grüße
                                                  Jeena Paradies

                                                  --
                                                  Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                                                  http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                                                  Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                                                  http://jeenaparadies.de/artikel/kinderschlagen/
                                                  Jeenas Bannertauschportal; selbstgemacht ;-)
                                                  http://jeenasbannerbude.de
                                            2. Hallo,

                                              PHP kennt in diesem Fall die Funktion mysql_connect() nicht
                                              Richtig. Ich weiß nicht, woher du diesen Funktionsnamen nimmst. Guckst du vielleicht mal auf http://de3.php.net/manual-lookup.php?pattern=mysql_connect()+&lang=de.

                                              Das kann nur dann sein, wenn PHP ohne die MySQL Funktionen kompiliert wurde.
                                              Nö. Einen solchen Funktionsnamen gibts halt nicht. Nimm eine Funktion, die es gibt.

                                              Ja jetzt weiß ich woher ich das habe: http://de3.php.net/manual/de/function.mysql-connect.php. Das ist doch jetzt das selbe oder bin ich schon ganz blemblem???

                                              Grüße
                                              Jeena Paradies

                                              --
                                              Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                                              http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                                              Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                                              http://jeenaparadies.de/artikel/kinderschlagen/
                                              Jeenas Bannertauschportal; selbstgemacht ;-)
                                              http://jeenasbannerbude.de
                            2. rehallo,

                              Für Debian kannst du dir [...] einen Apache 2.0.49 holen.
                              Meinst du ich soll das wirklich machen? Ich habe irgenwo von dir aussagen irgendwann gelesen dass da einige sachen noch nicht gingen mit dem 2.0er

                              Möglich, muß aber wirklich eine Weile her sein. Seit Apache 2.0.48 sind die "Kinderkrankheiten" im wesentlichen bereinigt. Die SuSE 9.1 bietet auf ihren neuen CDs gar keinen 1.3.x mehr an, sondern "default" gleich einen 2.0.49.

                              Äm PHP hat doch bis gestern wunderbar funktioniert.

                              Das hast du vorhin anders beschrieben, ich seh da jetzt nicht so ganz durch.

                              Dann installiere ich mir jetzt doch lieber den 2.0er den du oben vorgeschlagen hast.

                              Ich habe mittlerweile gute Erfahrungen damit, allerdings habe ich im Moment kein Debian installiert.

                              Grüße aus Berlin

                              Christoph S.

                              1. Hallo,

                                Das hast du vorhin anders beschrieben, ich seh da jetzt nicht so ganz durch.
                                »»Da gibt es seit dem ich da jetzt wieder an den confs ein wenig rumgespielt habe wieder mal diese Alte abnormalität dass wenn ich eine PHP Seite aufrufe dann wird sie nicht ausgeliefert.

                                Also seit dem ich gestern an den configs rumgespielt habe funktioniert PHP nicht mehr. Das hatte ich auch schon ganz ganz früher so im November letztes Jahr als ich PHP das erste mal installiert habe. Siehe </archiv/2003/11/63235/#m359238> ab Themawechsel.

                                Ich habe mittlerweile gute Erfahrungen damit, allerdings habe ich im Moment kein Debian installiert.

                                Ok, aber das macht glaube ich nichts :)

                                Grüße
                                Jeena Paradies

                                --
                                Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                                http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                                Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                                http://jeenaparadies.de/artikel/kinderschlagen/
                                Jeenas Bannertauschportal; selbstgemacht ;-)
                                http://jeenasbannerbude.de
                        2. Hallo,

                          Can't locate API module structure `mod_vhost_alias' in file /usr/lib/apache/1.3/mod_vhost_alias.so: /usr/sbin/apache: undefined symbol: mod_vhost_alias

                          Das liegt wohl daran dass

                          Module mod_vhost_alias
                            Compatibility: Available in Apache 1.3.7 and later.

                          und ich auf meinem Rechner

                          Apache/1.3.29 Server at localhost Port 80

                          installiert habe :/ kann ich das trotzdem irgendwie nutzen oder muss ich per Hand upgraden?

                          Grüße
                          Jeena Paradies

                          --
                          Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                          http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                          Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                          http://jeenaparadies.de/artikel/kinderschlagen/
                          Jeenas Bannertauschportal; selbstgemacht ;-)
                          http://jeenasbannerbude.de
                          1. hi,

                            Module mod_vhost_alias
                              Compatibility: Available in Apache 1.3.7 and later.

                            Bedeutet, es ist seit Apache 1.3.7 verfügbar. Das ist schon sehr lange her.

                            und ich auf meinem Rechner
                              Apache/1.3.29 Server at localhost Port 80
                            installiert habe

                            Ja, na und? 29 ist deutlich höher als 7, also _kann_ mod_vhost_alias damit durchaus eingesetzt werden.

                            Christoph S.

                            1. Hallo,

                              Ja, na und? 29 ist deutlich höher als 7, also _kann_ mod_vhost_alias damit durchaus eingesetzt werden.

                              Frag mich nicht warum aber ich habe anstatt "29" - 2.9 gelesen und das war für mich weniger als 7

                              Grüße
                              Jeena Paradies

                              --
                              Die Homepage einer Firma sollte doch eigentlich Userfreundlich sein?
                              http://jeenaparadies.de/weblog/2004/mai/userfreundlich/
                              Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
                              http://jeenaparadies.de/artikel/kinderschlagen/
                              Jeenas Bannertauschportal; selbstgemacht ;-)
                              http://jeenasbannerbude.de