Shopaufruf meldet Fatal error

  • Wir haben uns einen Testshop aufgebaut um damit mal zu experimentieren.

    Folgendes Szenario:

    - Update auf ZetaProducer 16.6.0

    - ZP Testshop-Projekt - Serveranforderungen:

    + Shop:Warenkorb - OK (Haken)

    + Formular - OK (Haken)

    + Server-Backend - OK (Haken)

    - Lizenz ZP 16 Premium Edition

    - Webserver im lokalen LAN

    + Windows10 22H2 Build 19045.2913

    + IIS V10.0.19041.2845

    + php V8.1.10.0 => info.php als zip im Anhang

    - Auf IIS-Testshop haben folgende Ordner diese zusätzlichen Berechtigungen:

    + .\assets\php\SHOP_DATA => IUSR/IIS_IUSRS Vollzugriff Diesen Ordner, Unterordner und Dateien

    + .\zp-server\data => IUSR/IIS_IUSRS Vollzugriff Diesen Ordner, Unterordner und Dateien


    Fehlermeldung bei Aufruf Shop-Seite:

    Fatal error: Uncaught Exception: Error creating directory 'C:\inetpub\wwwroot\DefaultFTP\testshop\assets\php\shop\..\_extracted\vendors\vendor'. in phar://C:/inetpub/wwwroot/DefaultFTP/testshop/assets/php/shop/zpshop.phar/core/general/DirectoryHelper.inc.php:26 Stack trace: #0 phar://C:/inetpub/wwwroot/DefaultFTP/testshop/assets/php/shop/zpshop.phar/core/helper/VendorsFromZipExtractor.inc.php(91): DirectoryHelper::CheckCreate('C:\\inetpub\\wwwr...') #1 phar://C:/inetpub/wwwroot/DefaultFTP/testshop/assets/php/shop/zpshop.phar/core/helper/VendorsFromZipExtractor.inc.php(71): VendorsFromZipExtractor::extractZip('C:\\inetpub\\wwwr...', 'C:\\inetpub\\wwwr...', 'C:\\inetpub\\wwwr...') #2 phar://C:/inetpub/wwwroot/DefaultFTP/testshop/assets/php/shop/zpshop.phar/afx.core.inc.php(358): VendorsFromZipExtractor::CheckAndExtractVendorsZip() #3 phar://C:/inetpub/wwwroot/DefaultFTP/testshop/assets/php/shop/zpshop.phar/core/stubs/index.php(5): require_once('phar://C:/inetp...') #4 C:\inetpub\wwwroot\DefaultFTP\testshop\assets\php\shop\zpshop.phar(9): include('phar://C:/inetp...') #5 C:\inetpub\wwwroot\DefaultFTP\testshop\assets\php\shop\afx.inc.php(13): require_once('C:\\inetpub\\wwwr...') #6 C:\inetpub\wwwroot\DefaultFTP\testshop\shop.php(499): require_once('C:\\inetpub\\wwwr...') #7 {main} thrown in phar://C:/inetpub/wwwroot/DefaultFTP/testshop/assets/php/shop/zpshop.phar/core/general/DirectoryHelper.inc.php on line 26

    Fehlermeldung bei Aufruf Warenkorb-Seite:

    Fatal error: Uncaught Exception: Error creating directory 'C:\inetpub\wwwroot\DefaultFTP\testshop\assets\php\shop\..\_extracted\vendors\vendor'. in phar://C:/inetpub/wwwroot/DefaultFTP/testshop/assets/php/shop/zpshop.phar/core/general/DirectoryHelper.inc.php:26 Stack trace: #0 phar://C:/inetpub/wwwroot/DefaultFTP/testshop/assets/php/shop/zpshop.phar/core/helper/VendorsFromZipExtractor.inc.php(91): DirectoryHelper::CheckCreate('C:\\inetpub\\wwwr...') #1 phar://C:/inetpub/wwwroot/DefaultFTP/testshop/assets/php/shop/zpshop.phar/core/helper/VendorsFromZipExtractor.inc.php(71): VendorsFromZipExtractor::extractZip('C:\\inetpub\\wwwr...', 'C:\\inetpub\\wwwr...', 'C:\\inetpub\\wwwr...') #2 phar://C:/inetpub/wwwroot/DefaultFTP/testshop/assets/php/shop/zpshop.phar/afx.core.inc.php(358): VendorsFromZipExtractor::CheckAndExtractVendorsZip() #3 phar://C:/inetpub/wwwroot/DefaultFTP/testshop/assets/php/shop/zpshop.phar/core/stubs/index.php(5): require_once('phar://C:/inetp...') #4 C:\inetpub\wwwroot\DefaultFTP\testshop\assets\php\shop\zpshop.phar(9): include('phar://C:/inetp...') #5 C:\inetpub\wwwroot\DefaultFTP\testshop\assets\php\shop\afx.inc.php(13): require_once('C:\\inetpub\\wwwr...') #6 C:\inetpub\wwwroot\DefaultFTP\testshop\warenkorb.php(484): require_once('C:\\inetpub\\wwwr...') #7 {main} thrown in phar://C:/inetpub/wwwroot/DefaultFTP/testshop/assets/php/shop/zpshop.phar/core/general/DirectoryHelper.inc.php on line 26

    Irgendeine Idee was noch fehlt???

    Muss man beim IIS noch sonst irgendwo "Schreibrechte" vergeben?

  • Hallo,

    ohne auf die Details eingehen zu können, sind die Ursache hier fehlende Berechtigungen. Der Webserver versucht beim ersten Aufruf des Shops noch einige Dateien aus einem ZIP zu installieren und darf dies nicht (\_extracted\vendors).

    Wie / wo die Rechte angepasst werden müssen, kann ich Ihnen leider nicht sagen. Sie könnten ja den Shop ggf. alternativ mal auf den Webspace eines entsprechenden Dienstleisters veröffentlichen.

    Freundliche Grüße
    Stefan S. (Zeta Producer-Support)

  • Ja, und kaum gibt man dem ganzen php-Verzeichnis Schreibrechte:
    .\assets\php => IUSR/IIS_IUSRS Vollzugriff Diesen Ordner, Unterordner und Dateien
    Dann klappt es auch mit dem Extrahieren und Anlegen des shops und somit auch der Anzeige der Shopartikel.

    Steht das eigentlich irgendwo in der Doku das das komplette php-Verzeichnis Schreibrechte benötigt?

  • Steht das eigentlich irgendwo in der Doku das das komplette php-Verzeichnis Schreibrechte benötigt?

    Nein, da dies normalerweise ohne jegliche Änderungen einfach funktioniert.

    Freundliche Grüße
    Stefan S. (Zeta Producer-Support)

  • Sorry, da muss ich so widersprechen.

    Ich hab es jetzt gerade auf einem ionos-Webserver ausprobiert und da liegen die entpackten Verzeichnisse ebenfalls unterhalb von root\php und nicht bei root\php\SHOP_DATA:

    Die Schreibrechte müssen somit zwingend zumindest ab root\php komplett freigegeben sein, damit sich der shop auf dem Webserver installieren lässt und funktioniert!

    Bitte um Anpassung in der Dokumentation oder testen sie es einfach selbst ;)

    Anmerkung:

    Hat man die Schreibrechte auf einem gehosteten Webserver mal freigegeben, dann liegen die schon ab root.

    Deshalb vermutlich auch ihre Antwort "da dies normalerweise ohne jegliche Änderungen einfach funktioniert."

    Da Schreibrechte über die komplette Website aber nicht jeder haben möchte wäre hier eine detaillierte Rechtevergabedokumentation schon sehr hilfreich.

    Aussagen wie "Wie / wo die Rechte angepasst werden müssen, kann ich Ihnen leider nicht sagen. " kann ich so auch nicht gelten lassen.

    Sie sind der Hersteller der Software und müssen auch über die Rechtevergabe Auskunft geben können.

    Bitte um Nachsicht für meine Ton, aber das muss ihnen eigentlich klar sein.

  • Ich hab es jetzt gerade auf einem ionos-Webserver ausprobiert und da liegen die entpackten Verzeichnisse ebenfalls unterhalb von root\php und nicht bei root\php\SHOP_DATA:

    Aber da mussten Sie ja keinerlei Rechte anpassen, damit der Shop funktioniert, oder? Das meinte ich in Beitrag #5.

    Freundliche Grüße
    Stefan S. (Zeta Producer-Support)

  • Ja, das ist korrekt.

    Es gibt aber Firmen und Einrichtungen die Hosten gerne selber ;)

    Da sieht es mit der Rechtevergabe dann anders aus als bei einem fremd gehosteten System.

    Einfach mal eine Kiste nehmen und einen IIS installieren. PHP dazu und dann den Shop veröffentlichen.

    Dann wissen Sie was ich meine ;)

  • Hallo
    Ich habe das gleiche Problem und bin Administartor auf meinem Rechner (alles lokal) Habe alle mögliche Freigaben der Ordner gemacht (mir bekannte) Habe immer diese Fehlermeldung.

     
    Freigabe auf Stufe ....php gemacht

    Komme nicht weiter


    Merci

  • Und natürlich als User im IIS. Zudem braucht auch die php Module wie im Handbuch unter onlineshop beschrieben.

    Dann alles veröffentlichen und online aufrufen

  • Bin mir nicht sicher ob das in der Vorschau überhaupt funktioniert. Du brauchst ja php auf einem Webserver damit sich das alles online installiert

  • Aber da mussten Sie ja keinerlei Rechte anpassen, damit der Shop funktioniert, oder? Das meinte ich in Beitrag #5.

    Zu damals. Wir benutzen nun Webhoster ratiokontakt. Bei denen muss man händisch für php vollzugriff erteilen sonst lässt sich der Shop nicht installieren ☝️

    Kommen Sie jetzt nicht wieder mit "bei anderen geht es". Es ist schlichtweg ein Sicherheitsrisiko wenn man für php skriptausführung vollzugriff erteilt!

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!