Ankündigung

Einklappen
Keine Ankündigung bisher.

Wamp-Server Projekt root auf ein Netzlaufwerk legen?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Wamp-Server Projekt root auf ein Netzlaufwerk legen?

    Hallo Zusammen,

    ich habe jetzt eine neue VM aufgesetzt mit frischer Installation meiner Umgebung. Dabei wird auch der WampServer genutzt. Wamp installiert sich auf c:\wamp64. Das Projekt-Root Verzeichnis ist unter c:\wamp64\www.
    Ich würde gerne meine Projekte nicht unter c:\wamp64\www anlegen da es ja eine VM ist, sondern auf dem freigegebenen Host-Laufwerk F:\PHPProjekte\ Der Hintergrund, ich hätte die Projekte einzeln im Zugriff bei der täglichen Datensicherung. Die VMs werden zwar auch gesichert, jedoch über das Host-System. Ich kann also nicht einzelne Projekt-Dateien zurücksichern sondern müsste die gesamte VM zurücksichern um dann aus dem Projekt eine einzelne Datei zurückzuholen.

    Hat jemand eine Idee? geht das überhaupt?


  • #2
    Document Root in der Webserver-Konfiguration ändern.

    Kommentar


    • #3
      ah, dankeschön für die Info. Es gibt also eine Möglichkeit. Habe ich gleich ausprobiert, doch leider ohne Erfolg.
      Ich habe über das Wamp Menü die Datei c:\wamp64\bin\apache\apache2.4.41\conf\httpd.conf
      editiert:

      Bezüglich DokumentRoot habe ich die Änderungen in Zeile 269 durchgeführt :

      Code:
      #DocumentRoot "${INSTALL_DIR}/www"   <<<original auskommentiert
      DocumentRoot "F:/PHPWorkspace/www"
      
      #<Directory "${INSTALL_DIR}/www/"    <<<original auskommentiert
      <Directory "F:/PHPWorkspace/www/"
      selbige Änderung habe ich auch in der httpd-vhosts.conf durchgeführt.

      Vor dem Speichern habe ich alle Dienste gestoppt. Anschließend aus der nackten Installation alle Files aus c:\wamp64/www nach F:/PHPWorkspace/www kopiert. Danach die .conf gespeichert und die Dienste wieder versucht zu starten.
      Der Apache Service lässt sich nicht mehr starten. Danach habe ich die VM neu gestartet ohne Erfolg.
      Das Wamp Menü hat ein Eintrag www directory das zeigt immer noch auf c:\wamp64/www

      Kann es sein dass das DocumentRoot die VM nicht verlassen darf? Das Laufwerk F: ist von meiner Host-Maschine ein lokales Laufwerk welches freigegeben wurde und in der VM über das Netzwerk erreichbar ist.





      Kommentar


      • #4
        Hat der User, unter dem Apache läuft, überhaupt Zugriff auf das Netzlaufwerk?

        Kommentar


        • #5
          ja, der User hat Admin Rechte. Es handelt sich um KIENE produktive Installation sondern um meine Entwicklungsumgebung!
          Ich habe etliche Berichte darüber gelesen doch alle Beispiele gehen von lokalen Laufwerken an. Nicht ein einziges beschreibt ob es mit einem Netzlaufwerk funktioniert. Ich habe den Verdacht dass genau das nicht geht.
          Die VM ist übrigens noch komplett frisch. Nur Windows 10, Chrome, Firefox, WampServer, Git, Tortoise und PHPStorm ist alles frisch installiert.

          Aus einem anderen Beitrag habe ich gelesen, die index.php aus dem f:\PHPWorkspace\www zu bearbeiten:
          //$server_dir = "../";
          $server_dir = "c:/wamp64/";

          Auch ini den Apahe logs steht nichts.

          Wenn die Änderung wieder rückgängig mache, lässt sich der Apache wieder starten.

          Kommentar


          • #6
            Es macht kein Unterschied, ob es ein lokales oder ein Netzlaufwerk ist. Wichtig ist nur, dass der User Zugriff aufs Netzlaufwerk hat. Bitte prüfe nochmal nach unter welchem User Apache läuft und ob dieser wirklich Zugriff darauf hat.

            Und ich schreibe bewusst "Apache" und nicht das Wamp-GUI. Das sind zwei verschiedene Dinge.

            Du kannst Apache auch mal ohne Wamp mit deinem eigenen User starten und dann schauen obs geht. Wenns damit geht, dann ist es klar.

            Kommentar


            • #7
              Ich habe etliche Berichte darüber gelesen doch alle Beispiele gehen von lokalen Laufwerken an. Nicht ein einziges beschreibt ob es mit einem Netzlaufwerk funktioniert. Ich habe den Verdacht dass genau das nicht geht.
              Auch bei MS$ sollte es inzwischen keine Rolle mehr spielen, wo Dateien physikalisch liegen.

              Kommentar


              • #8
                Der Dienst wird über das lokale Systemkonto ausgeführt. Ich habe nun die Netztwerkverbindung getrennt und erneut aufgebaut. Dabei habe ich angehakt mit unterschiedlichem Konto anmelden. Im Dialog meinen Usernamen und das Passwort hinterlegt. Danach versucht unter Windows den Apache Service zu startet, ohne Erfolg. Dann habe ich den Dienst umgestellt auf mein Userkonto, geht leider auch nicht.

                Ich habe auch gelesen, man könnte auch ein Symlink anlegen. Dabei müsste man die Apache Config nicht anpassen. Habe ich noch nicht ausprobiert da es ja offensichtlich gehen muss.

                Kommentar


                • #9
                  Ich würde auch mal versuchen statt den Laufwerksbuchstaben zu verwenden die komplette Netzwerkadresse anzugeben. Vielleicht wird für den User nur einfach nicht das Laufwerk automatisch gemapped.

                  Kommentar


                  • #10
                    Ich habe soeben die Varianten probiert, ziemlich Hartnäckig der Bruder:

                    Code:
                    \\notebook\F\PHPWorkspace\www\ die Maschine hat den Namen notebook und die Freigabe lautet "F"
                    F:/PHPWorkspace/www/
                    F://PHPWorkspace//www//
                    F:\PHPWorkspace\www\
                    F:\\PHPWorkspace\\www\\ Jeweils bei DocumentRoot ohne dem letzte "back slash", "slash" und bei <Disrectory... mit

                    Kommentar


                    • #11
                      Hast du das Escaping des \-Zeichens beachtet?

                      Siehe:

                      https://stackoverflow.com/a/10449179

                      Was hast du wirklich gemacht und wie genau lautet die Fehlermeldung, die Apache liefert?

                      Kommentar


                      • #12
                        So sieh es aktuell aus in der httpd.conf

                        Code:
                        #DocumentRoot "${INSTALL_DIR}/www"
                        DocumentRoot "\\\\notebook\\F\\PHPWorkspace\\www"
                        
                        #<Directory "${INSTALL_DIR}/www/">
                        <Directory "\\\\notebook\\F\\PHPWorkspace\\www\\">

                        und so ini der httpd-vhosts.conf.
                        Code:
                        <VirtualHost *:80>
                          ServerName localhost
                          ServerAlias localhost
                          #DocumentRoot "${INSTALL_DIR}/www"
                          DocumentRoot "\\\\notebook\\F\\PHPWorkspace\\www"
                        
                          #<Directory "${INSTALL_DIR}/www/">
                          <Directory "\\\\notebook\\F\\PHPWorkspace\\www\\">
                            Options +Indexes +Includes +FollowSymLinks +MultiViews
                            AllowOverride All
                            Require local
                          </Directory>
                        </VirtualHost>
                        Ich habe vorher alle Einträge aus der apache_error.log gelöscht und den Apache Server Dienst versucht neu zu starten. Es wird ein Eintrag apache_error.log eingestellt. Gibt es eine andere Log-Datei?

                        Kommentar


                        • #13
                          Was passiert, wenn du den Apache auf der Command Line startest?

                          Kommentar


                          • #14
                            ich habe C:\wamp64\bin\apache\apache2.4.41\bin\httpd.exe ausgeführt. Der Server startet ohne Fehlermeldung.

                            Anscheinend funktioniert jetzt teilweise die Umstellung. Ich rufe localhost auf und sehe eine große Liste an Fehlermeldungen:
                            Undefined index: phpVersion in \\192.168.1.23\F\PHPWorkspace\www\index.php on line 28
                            Notice: Undefined index: apacheVersion in \\192.168.1.23\F\PHPWorkspace\www\index.php on line 29
                            Notice: Undefined index: mysqlVersion in \\192.168.1.23\F\PHPWorkspace\www\index.php on line 31

                            usw. Es wird doch die index.php aus F:\PHPWorkspace\www aufgerufen. Die Index php habe ich auch geringfügig angepasst:
                            Code:
                            //$server_dir = "../";
                            $server_dir = "C:/wamp64/";

                            das ist in der httpd.conf

                            Code:
                            #DocumentRoot "${INSTALL_DIR}/www"
                            DocumentRoot "\\\\192.168.1.23\\F\\PHPWorkspace\\www"
                            
                            #<Directory "${INSTALL_DIR}/www/">
                            <Directory "\\\\192.168.1.23\\F\\PHPWorkspace\\www\\">
                            Das ist die vhosts

                            Code:
                            <VirtualHost *:80>
                              ServerName localhost
                              ServerAlias localhost
                              #DocumentRoot "${INSTALL_DIR}/www"
                              DocumentRoot "\\\\192.168.1.23\\F\\PHPWorkspace\\www"
                            
                              #<Directory "${INSTALL_DIR}/www/">
                              <Directory "\\\\192.168.1.23\\F\\PHPWorkspace\\www\\">
                                Options +Indexes +Includes +FollowSymLinks +MultiViews
                                AllowOverride All
                                Require local
                              </Directory>
                            </VirtualHost>

                            Kommentar


                            • #15
                              Mal von dieser index.php abgesehen (brauchst du die überhaupt?), geht jetzt alles andere?

                              Kommentar

                              Lädt...
                              X