Ist Oxid so komplex geworden, oder bin ich einfach unfähig?

Ich würd so gerne weiterhin OXID verwenden, es gibt sogar noch Anbieter von Erweiterungen, nur leider kann ich die alle nicht einmal ausprobieren, weil ich dazu ja Composer funktionierend und aktuell haben muss, es zudem genauso wie das System auf dem es läuft voll verstehen muss, scheinbar.

Ich fürchte, ich muss jetzt einfach aufgeben. Nachdem ich nun schon seit Jahren versuche irgendwie mit Composer klarzukommen, sehe ich nun gar keinen Weg mehr. Die Online-Produktumgebung vom Dienstleister kann ich nicht voll beherrschen, das war mir von Anfang an klar, aber nachdem ich es nach wirklich vielen und intensiven Versuchen, das aktuelle OXID (V6 oder V7 klappt beides kein Stück) auf irgendeinem Rechner für mich selbst zum Laufen zu kriegen, immernoch nicht mal ansatzweise geschafft hab, muss ich einfach aufgeben und mich fragen, bin ich einfach unfähig?
Erstmal die richtige Composerversion her, dann die passende PHP-Version mit den richtigen Einstellungen dazu, dann diverse Fehler von Composer und auch dem Webserver zu beheben, soweit so normal. Aber ich komm einfach nie zu einer fertigen Installation, egal wieviel Fehler ich behebe. Es geht immer weiter, manchmal hören die Fehler auch einfach auf, aber es kommt einfach keine fertige Installation dabei heraus.

Ist es wirklich so komplex geworden, dass man mit Linux ein Gott sein muss und es unter Windows einfach gar nicht mehr verwenden kann?
Mit welchem Setup kann man OXID mit möglichst wenig Chaos drumherum installieren?
Gibt es sowas wie eine Referenzumgebung oder eine detailliert Anleitung dazu, die mehr als nur einen Composerbefehl beinhaltet?

Hallo,

ich kann deinen Schmerz verstehen. OXID war mal einfach!

War es das wirklich? Systemvoraussetzungen kommen mit jeder Software (selbst ein Betriebssystem stellt Anforderungen). Und ja, die muss man erfüllen. Gehen wir gedanklich nochmal zurück zu Version 4. Systemvoraussetzungen: Apache, PHP, MySQL, die richtigen Rechte, FTP oder SSH Zugang, oder lokale Umgebung. Damals unter Windows auch schon ein Graus, weil Apache einfach mal ursprünglich für Linux-(derivate) entwickelt wurde.

composer ist auf den ersten Blick eine Komplexitätstufe mehr und die Modulhersteller machen es einem da tatsächlich teils nicht einfach. Denn die Idee hinter composer ist genial und bei anderen Programmiersprachen wie Java schon seit langem gang und gäbe. Der Gedanke ist, dass ich in meiner composer.json angebe was ich brauche. Die Software die ich da angebe nutzt selber eine composer.json um zu beschreiben, was sie braucht. Damit entsteht am ende eine Landkarte von kleinen Fragmenten, die zusammengesetzt das große Bild ergeben. Idealerweise kommen diese Fragmente alle aus einer öffentlichen Quelle. Wenn diese bei packagist registriert ist, auch ganz ohne zutun von irgendwelchen kruden Anpassungen in der composer.json

Gibt es aber z.B. von Modulherstellern ein Paket zum runterladen, ja, dann wird es schon wieder komplizierter. Die Datei muss wie früher ausgepackt, auf dem Server abgelegt und in der composer.json als eigenes Repository eingetragen werden. Tippfehler? Boom!

Zu deiner Frage: Das Setup ist in der Dokumentation vorgegeben, wie früher auch. Apache, PHP, MySQL, composer. Wenn das alles stimmt (in der richtigen Version), dann kannst Du dir mit composer dein eigenes System bauen lassen. Das Setup Verzeichnis gibt es immernoch wie früher, ich bevorzuge aber das Manuelle eintragen der Daten in die config.inc.php nachdem composer durch gelaufen ist. Geschmackssache. War aber auch in der 4er genauso.

Nochmal ich kann dich verstehen und ich fühle mit dir. Der Prozess war auch für mich am Anfang zäh und ekelhaft - und ich bin Entwickler. Jetzt bin ich froh, dass wir da durch sind. Stehen bleiben ist meiner Meinung nach keine Option. Das hat OXID schon oft und teils zu lange gemacht.

Muss man Linux Gott sein? Ich finde nicht auch wenn die Konsole anfangs Angst macht. Man muss sich nur drauf einlassen. Ich kann mich noch gut erinnern als ich meine erste Datei per FTP übertragen habe. Das war ein ähnliches Gefühl. Damals 1998.

Windows? Ich nutze kein Windows. Wenn Du PHP auf Windows am laufen hast (wie früher), dann kannst Du auch composer nutzen. Denn composer ist auch nur ein PHP Script. Ob die Daten aus einem ZIP fallen oder von composer runtergeladen werden ändert nichts am Ergebnis.

Ich fang jetzt nicht mit docker an :stuck_out_tongue: Auch ein Part den ich lange vor mir her geschoben habe und jetzt glücklich bin, den Schritt mal gegangen zu sein. Für einen Anwender - ja das gebe ich zu - zu kompliziert.

Womit fühlst Du dich wohl? Welches Setup läuft mit einer alten OXID Version bei dir? Wenn Du die nimmst, auf die aktuellen Versionen ziehst (Systemvoraussetzung) und dir dann ein composer dazu installierst, dann solltest Du eine Version mit wenig Chaos haben…

… dann kommt der eine composerbefehl :smiley:

Grüße,
Thorsten

2 Likes

Danke für das Mitgefühl, viel mehr als ein wenig Bestätigung erhoffe ich mir hier grade ehrlich gesagt auch gar nicht.

Gegen Konsolen hab ich übrigens auch nichts, nur Composer scheint was gegen mich zu haben :stuck_out_tongue:
Die Idee von Composer find ich auch sehr gut, aber die Realität der Anwendung ist für mich leider dass Listen abgearbeitet werden, von denen ich am Ende aber nur einen Bruchteil benötige, die aber fehleranfällig sind und mit der Zeit scheinbar immer länger werden.

In Windows fühl ich mich deutlich wohler, aber da scheitere ich scheinbar daran dass die Fehler einfach überhaupt kein Ende nehmen und es so unglaublich viele Probleme im Zusammenspiel von OXID, Webserver und Composer zu geben scheint.
In Linux scheint dann mein mangelnde Erfahrung das Problem zu sein, hier bin ich regelmäßig bereits nach einer Hand voll behobener Fehler am Ende meiner Möglichkeiten und nicht mal der Composer create-project Befehl kommt zu einem fehlerfreien Ende.

Genau eine Oxidinstallation, bzw. ein Update von OXID 4 auf 6.2 (auf einem virtuellen Server mit Ubuntu) habe ich leider geschafft, was auch fast mein erster Kontakt mit Version 6 war. Wenn ich vorher die Tragweite der Änderungen dieser neuen Version begriffen hätte, hätte ich da sicher mehr getestet. Ich hatte auch die naive Hoffnung dass ich mit Composer schon klarkommen werde, die Idee dahinter fand ich ja doch sehr gut. Ich hab es über die Jahre zu verschiedenen Zeitpunkten auf verschiedensten Systemen mit verschiedenen Versionen weiter ausprobiert und leider keinerlei Erfolge damit erzielt.
Jetzt kann ich diesen immernoch laufenden Shop leider nicht mehr wirklich warten, egal was ich mit Composer versuche ich bekomme nur Fehler über Fehler oder manchmal läuft der Shop auch einfach ohne konkreten Fehler nicht mehr nachdem ich irgendwas versucht habe mit Composer zu machen. In der gleichen Umgebung wie der vermurkste laufende OXID 6 Shop schaff ich es leider aber auch nicht ein weiteres Testsystem zu installieren.

Updates waren früher natürlich sehr komplex, erst recht mit abenteuerlich angepassten Themes, aber ich musste es einfach ‘nur’ manuell abarbeiten. Bei Version 4.x konnte ich den Shop jederzeit umziehen einfach indem die richtige PHP-Version lief, die Datenbank und die Zugriffsrechte da waren. Ich konnte auch noch selbst Module/Erweiterungen schreiben, zumindest an den Stellen an denen ich OXID verstanden hab. Jetzt kann ich nicht einmal mehr fertige Module/Erweiterungen installieren, das System in einer anderen Umgebung testen, ich bin froh, dass ich überhaupt noch Templateanpassungen hinkrieg.

Ich kann nur spekulieren, was du machst und wo es hängt. Generell ist es wichtig, dass die Systemvoraussetzungen erfüllt sind:
https://docs.oxid-esales.com/eshop/de/latest/installation/neu-installation/server-und-systemvoraussetzungen.html

Dann reicht normal ein composer create-project, um den OXID Shop zu laden und Setup-bereit zu bekommen.

Daher vermute ich, dass es bei dir an diesen Systemvoraussetzungen scheitert. Windows wird z. B. nicht unterstützt. Ob das überhaupt noch geht, weiß ich nicht.

Wie so ein Linux Server für OXID konfiguriert werden muss, kannst du z. B. aus einem Dockerfile herauslesen. Du kannst dir das so auch gleich als Docker bei dir einrichten. Das würde auf diese Weise dann indirekt in Windows laufen. Mit Docker wäre es zudem weniger das Problem den Shop zum Laufen zu bekommen, eher dann die Docker Umgebung.

Meine Empfehlung ist es bei der Einrichtung und Verwaltung eines Servers und Shops die Unterstützung einer Agentur oder eines Freelancers hinzuzuziehen. Dies hilft nicht nur Zeit zu sparen und das System sicher zu konfigurieren, sondern ermöglicht auch professionelle Hilfe bei Anpassungen, also dass diese auch updatesicher durchgeführt werden. Und auch die Updates durchführen. Die sind inzwischen recht ausführlich dokumentiert, da muss man sich aber auch erstmal durchkämpfen.

Es sollte eigentlich nicht vorkommen, dass du Listen abarbeitest und am Ende nur einen Bruchteil davon benötigst. Eigentlich sind alle Punkte bei Installation und Update nötig. Tatsächlich ist das eine der größten Fehlerquellen bei Updates, dass Schritte vergessen/weggelassen werden, oder beim Updatevorgang und der Nachfrage Module zu überschreiben immer nein ausgewählt wird.

Wenn du eine einfache Shop-Lösung willst, die du allein verwalten kannst, dann passen womöglich Cloud-Plattformen, die technisch nicht selbst verwaltet werden müssen, besser zu deinen Bedürfnissen. Der OXID Shop hat einige Veränderungen durchgemacht, sodass er eventuell nicht mehr ideal auf deine Bedürfnisse zugeschnitten ist.

Was die steigende Komplexität von Internetanwendungen wie den OXID Shop angeht, die resultiert auch aus den heutigen höheren Anforderungen. So ist es inzwischen erforderlich, dass solche Anwendungen mit mehreren Datenbanken und App-Servern betrieben werden können. Darüber hinaus müssen moderne Deployments unterstützt werden, um verschiedene Testing-Umgebungen zu ermöglichen. Dies gewährleistet darüber hinaus nicht nur eine bessere Skalierbarkeit, sondern schützt auch das Produktivsystem vor potenziellen Fehlern. Hinzu kommen neue Techniken, die die Modulentwicklung verbessern.

Technisch toll, aber die Anforderungen an das technische Hintergrundwissen steigt.
Wahrscheinlich wird KI helfen, diese Komplexität zukünftig wieder zu reduzieren :robot:
:slight_smile:

OXID war früher wirklich einfacher und besetzte die Nische zwischen OpenCart, wo die Funktionalität und Modularität problematisch waren und bisher bleiben, und Magento, wo alles kompliziert und langsam war. OXID hatte doch einen hochwertigen modularen Aufbau, ist einfach und zuverlässig. Jetzt hat Shopware gezeigt, dass der technologische Ansatz viel interessanter für die potenziellen Anwender ist. Darum musste OXID auf Composer umstellen, GraphQL implementieren und Komponenten von Symfony einfügen.
Das führte dazu, dass es nicht mehr um ein System für unabhängigen Support geht. Die letzten Änderungen hinsichtlich der Übergang von OXID auf kostenpflichtige Basis haben dazu geführt, dass dieses Produkt eher auf ausgereifte Unternehmen ausgerichtet ist.
Wenn es für Sie zu schwer ist, mit Composer zu umgehen, würde ich empfehlen, keine Zeit zu verlieren. Dort erfolgten die einfachsten Änderungen. OXID ist viel komplizierter. Die Programmiersprache PHP ist auch komplexer geworden. Ich kann Ihnen eine Agentur empfehlen, die Ihnen mit der Verwaltung eines OXID Onlineshops hilft https://kennersoft.de/oxid-agentur