Thread Verfasser: mkasl
Thread ID: 623
Thread Info
Es gibt 32 Beiträge zu diesem Thema, und es wurde 4122 Mal angesehen.  Ausserdem wurden Dateien angehängt.

 Thema drucken
Fusion setup
Systemweb
Wie gesagt, wenn du es geschafft hast Wordpress zu installieren dann sollte auch PHP-Fusion funktionieren.
MariaDB statt MySQL zu verwenden ist eine gute Wahl, weil es erstens performanter bei 100% Kompatibilität ist und zweites kehren nicht ohne Grund zahlreiche Unternehmen und Entwickler MySQL den Rücken:
Seit es von Oracle aufgekauft wurde befürchten viele, dass aus dem einstmaligen Open-Source-Projekt in der Zukunft einmal etwas kommerzielles entsteht.
MariaDB wurde von ehem. Entwicklern von MySQL geboren und soll frei und für alle zugänglich bleiben.

Nein ich habe keine Erfahrungen mit deiner Synology Hardware. Du hast Apache 2.2 bzw. 2.4 zusammen mit PHP 5.6/7.0 auch, auch der MariaDB-Datenbankserver läuft. Damit sind bereits alle Voraussetzungen für den Einsatz von PHP-Fusion erfüllt, aber eben nicht vom Original-Paket. Dieses wurde seit 2011 nicht mehr weiterentwickelt. Seither ging im Gegensatz dazu aber die Entwicklung der Programmiersprache PHP immer weiter.
Die daraus entstehenden Probleme mit "abgeschalteten" Befehlen (praktisch im PHP-Fusion-Code enthaltene Anweisungen, die in aktuellen PHP-Versionen nicht mehr existieren) sind mit dem von mir empfohlenen Updatepack komplett überarbeitet worden.

Daher habe ich dir geraten, alles was du bisher an PHP-Fusion-Dateien bereits auf dieses Teil kopiert hast einfach komplett zu löschen, denn wahrscheinlich hast du das Updatepack nicht vollständig kopiert, sondern nur teilweise.
Im Setup-Script des neuen Packs gibt es den Befehl "mysql_connect" nämlich nicht mehr. Dieser wurde neben vielen anderen ersetzt, da ab PHP 5.6 dieser Befehl nicht funktioniert.
Vorher hast du berichtet, dass überhaupt kein Fehler angezeigt wurde, es hat einfach nur nicht funktioniert. Dies liegt sehr wahrscheinlich daran, dass du auch da ein altes Setup-Script verwendet hast, das aber vor dem Befehl "mysql_connect" noch ein "@" stehen hat. Das war bei der Fusion 7.02.07 so üblich und führt dazu, dass auftretende Fehler einfach unterdrückt werden. Es wird also verhindert, dass solche Fehler im Browser angezeigt werden. Stattdessen sieht man eben nichts außer womöglich einer leeren (weißen) Seite.

Wenn du nun das Updatepack noch einmal frisch rüber kopierst, nimm alle Dateien aus dem "full" Ordner.
Benenne die _config.php zu config.php um und starte die Installation.
Sollte auch hier jeglicher Versuch erfolglos sein ist zumindest sichergestellt, dass du die empfohlene aktuelle Version verwendest. Dann schaust du einfach mal in die error.log deines Apachen und kannst die dort zuletzt gespeicherten Fehlerlogs hier posten.
Alternativ kannst du auch die php.ini bearbeiten und darin den Parameter für"error_reporting" auf "E_ALL" setzen. Wenn du gerade dabei bist kannst du auch in gleicher Datei schauen, wie "short_open_tags" festgelegt ist. Dieses sollte für PHP-Fusion auf "on" bzw. "yes" stehen, da viele Entwickler von Infusionen noch die gekürzte Schreibweise (statt "<?php" wurde nur "<?", also der sogenannte "Short Open Tag" im Scriptcode geschrieben) für das Einleiten des PHP-Codes verwendet haben und ohne diese Einstellung laufen die betreffenden Infusionen dann nicht mehr.
Anschließend den Apache zur Übernahme dieser Änderungen 1x neu starten.
Wenn du nun das Setup durchführst und es geht nicht mehr weiter, bekommst du wenigstens den Grund dafür in Form einer Fehlermeldung in deinem Browserfenster angezeigt.

Falls du nicht weißt, wo sich die "php.ini" befindet, kannst du eine Datei namens "info.php" mit folgendem Inhalt anlegen:

Code 

<?php phpinfo(); ?>

und diese Datei auf deine Anlage in den Webordner kopieren. Anschließend rufst du diese Datei mit dem Browser auf, sie enthält eine detaillierte Ausgabe über deinen PHP-Interpreter und u.a. eben auch die Angabe über den Dateipfad zur verwendeten php.ini
 
mkasl
guten Morgen
Super , nach dem Frühstück werde ich alles ausprobieren . Alleine MariaDB und dann auf die Datenbank zu kommen , ist mir neu . Dachte das geht nur über myühpadmin. Das muß ich versuchen. Suche nach der URL dafür . Oder wie komme ich auf die Datenbank ?
VG Manfred
Also Maria DB kann ich nur über die Diskstation erreichen und zwar nur mit phpmyadmin .Wenn du von WordPress sprichst - das ist im Angebot Software der Synology DS - Wird automatisch installiert und wie du schon mal bemerkt hast , richtet es auch die DB auf einer vorhandenen Maria... ein Anders bei Fusion - Das muß ich , wie du es auch machst , extern auf meine DS hochladen und Setup auch extern mit den Synology Serverdaten ausführen.
Und da beginnt das Problem - entrweder falsche DB ohne Tabelle eingerichtet , Falsche Daten und wie hier schon mal erwähnt , finde ich meine DB nicht in der mysql , wo auch immer sie zu finden ist.
Können auch falsche Rechte sein - 0 Ahnung , weil ich das früher nie beachten mußte.
Danke für deine lange gutgemeinte Erklärung - trifft für andere Server zu - bei denen auch ich kein Problem mit php Fusion habe.
Wir müssen eine Erklärung für diesen Fehler finden - Ich wiederhole mich - hatte das schon früher mal - weiß aber nicht , wie ich es in den Griff bekam.
mkasl.diskstation.me/fusion/ini.php
Bearbeitet von mkasl am 10.03.2018 um 09:56
 
Systemweb
In deinen Screenshots war zu sehen, dass du bereits Zugriff auf deine Datenbanken mittels phpMyAdmin hattest.
Wenn du dabei Rootrechte hast, kannst du direkt eine Datenbank anlegen und einen Benutzer inkl. Passwort festlegen, der Zugriff auf diese Datenbank hat.

Hierfür klickst du einfach oben auf den Reiter "SQL" und trägst im erschienenen Eingabefenster folgende Befehle ein:

Code 

CREATE DATABASE `phpfusion` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Diese Beispiel erzeugt die Datenbank "phpfusion", die du beliebig anders nennen kannst.
Nun legen wir noch einen Benutzer mit Zugriff auf diese Datenbank an:

Code 

GRANT SELECT, INSERT, DELETE, UPDATE, ALTER ON `phpfusion`.* TO 'benutzer'@localhost IDENTIFIED by 'password';

Für 'benutzer' wählst du natürlich den gewünschten Benutzernamen und für 'password' trägst du ein eigenes Passwort ein.
Ein abschließendes

Code 

flush privileges;

aktiviert die vorgenommenen Änderungen ohne neu starten zu müssen.

Mit diesen Daten kannst du dann die neue Datenbank benutzen. Zugriff ist nur möglich vom lokalen Server (localhost) mit den korrektem Benutzername / Passwort.
Falls du von extern zugreifen möchtest musst du localhost entweder durch externe IP bzw. Servername ersetzen oder einfach % angeben, der Sicherheit dient das aber nicht.
 
mkasl
eine php fusion besteht schon - die mußte ich nicht anlegen
Ich kann alles machen / trotzdem ohne Erfolg - kannst gerne selber nachsehen _
http://mkasl.diskstation.me/phpMyAdmin/ root asl1941 als Übergang zum Testen klappt nur intern

Setup : http://mkasl.diskstation.me/fusion/se...setup.php root asl1941 MKDB10
Bearbeitet von mkasl am 10.03.2018 um 13:22
 
Systemweb
Bei dir fehlt offensichtlich die PHP Extension für MySQL.
Du müsstest also sehen, wie du das installiert bekommst.

Unter Linux Debian heißt dieses Modul "php5-mysql" bzw "php7. 0-mysql", je nachdem welche PHP-Version man nutzt.

Möglicherweise ist es bei dir aber auch schon vorhanden, aber muss noch aktiviert werden.

Zusammengefügt am 12. März 2018 um 17:32:31:
Ich habe dein Problem mal gegoogelt:
https://forum.synology.com/enu/viewto...hp?t=50976

Übersetzt per Google Translator;
https://translate.google.com/translat...edit-text=

Hier wird zwar von einer DS210 / DS211 gesprochen, dürfte aber bei deiner DS115 ähnlich oder gleich sein.
Bearbeitet von Systemweb am 12.03.2018 um 16:32
 
mkasl
Hi
Diesen Fehler habe ich nach Neuinstall nicht mehr .Aber in mysqladmin nach den Erstellen der Datenbank kommt jetzt : Der phpMyAdmin Konfigurations-Speicher wurde deaktiviert. Weiß aber nicht , wie es aktiviert wird . Vielleicht ist das die Ursache , dass mein Setup nicht durchläuft / Der phpMyAdmin Konfigurations-Speicher wurde deaktiviert.
 
Systemweb
Diese Meldung kannst du ignorieren, hat mit dem Problem nichts zu tun.
Es fehlt lediglich die Datenbank, in die phpMyAdmin seine Einstellungen dauerhaft abspeichert. So arbeitest du eben ohne die Möglichkeit, deine persönlichen Settings fest abzuspeichern (bevorzugte Export-Optionen usw.)

Wenn du nun eine Datenbank erstellt hast für PHP-Fusion solltest du nur noch den Benutzer dafür anlegen, der Zugangsrechte zu dieser Datenbank hat.

Wie das geht steht in meinen vorherigen Beiträgen.
 
mkasl

Zitat

Systemweb schrieb:

Diese Meldung kannst du ignorieren, hat mit dem Problem nichts zu tun.
Es fehlt lediglich die Datenbank, in die phpMyAdmin seine Einstellungen dauerhaft abspeichert. So arbeitest du eben ohne die Möglichkeit, deine persönlichen Settings fest abzuspeichern (bevorzugte Export-Optionen usw.)

Wenn du nun eine Datenbank erstellt hast für PHP-Fusion solltest du nur noch den Benutzer dafür anlegen, der Zugangsrechte zu dieser Datenbank hat.

Wie das geht steht in meinen vorherigen Beiträgen.

Auf der Datenbank finde ich keine Option einen anderen Benutzer anzulegen - was soll das brinden ? habe nur root und in Synology noch einen Insider mit allen Rechten
 
Systemweb

Zitat

habe nur root und in Synology noch einen Insider mit allen Rechten
Dieser "Insider" hat keine Rechte für eine neu angelegte Datenbank, wenn diese ihm nicht explizit zugewiesen wurden. Nur der "root" darf "alles" und hat Zugriff auf jede Datenbank.

Offenbar kannst du jedoch mittels benutzer "root" beim Installieren nicht erfolgreich auf die Datenbank zugreifen. Es kann also durchaus sein, dass die Macher der Synology-Software da ein Sicherheitsfeature eingebaut haben, um Zugriffe zu filtern. So ist z.B. möglich, dass der Zugriff nur über den Host "127.0.0.1" statt "localhost" erlaubt ist oder umgekehrt. Für den Datenbank-Server sind das 2 Paar Schuhe, auch wenn es im Allgemeinen der gleiche physikalische Server ist.
Wenn du eine neue DB anlegst, hat erst einmal nur root den Zugriff darauf. Aber erstens arbeitet kein vernünftiger Mensch auf einem geplant öffentlich zugänglichem System mit dem Root-Benutzer, zweitens hast du ja nun erfahren dass du mit diesem Benutzer scheinbar nicht installieren kannst.

In phpMyAdmin gibt es keine simple "Mausklick-Option", um Benutzer anzulegen und ihnen eine bestimmte Datenbank zuzuweisen. Das macht man entweder mittels Befehlen direkt in der Konsole/Shell oder aber etwas einfacher mittels phpMyAdmin´s Eingabefenster für SQL Befehle.
Wie die Befehle dafür lauten habe ich in einem meiner vorigen Beiträge geschrieben. Da du die Datenbank per Mausklick erzeugen kannst musst du anschließend nur diesen Befehl benutzen, um einen neuen Benutzer anzulegen und für diese Datenbank zu authorisieren:

Code 

GRANT SELECT, INSERT, DELETE, UPDATE, ALTER ON `phpfusion`.* TO 'benutzer'@localhost IDENTIFIED by 'password';

Hier wird davon ausgegangen, dass du die Datenbank namens "phpfusion" vorher angelegt hast, also bei Bedarf anpassen.
Für 'benutzer' und 'password' legst du eigene Werte fest, die ' müssen dabei stehen bleiben.

Der Zugriff wird auf diese Weise für den MySQL-Host "localhost" angelegt. Das gleiche könntest du noch einmal für "127.0.0.1" wiederholen, um ganz sicher zu gehen. Das ist vor allem dann zu empfehlen, wenn der localhost in deinem System nicht richtig aufgelöst wird (sozusagen wenn dein System nicht weiß, dass "localhost" = "127.0.0.1" ist).

Nach dem Flushen oder alternativ Neustarten des MySQL- bzw. MariaDB-Servers sind die neuen Daten aktiv.
Den Zugriff kannst du dann testen, indem du dich mit deinem neu angelegten Benutzer und Passwort in phpMyAdmin einloggst. Dabei solltest du nur noch die einzige zugewiesene Datenbank "phpfusion" bearbeiten können.

Zu deiner Frage nach dem Sinn des Ganzen:
Ich stochere hier nicht blind im Salat herum. Führt diese Maßnahme wider Erwarten nicht zum Erfolg weiß man wenigstens, woran es nicht liegen kann.
 
mkasl
Hi
Hi - ich danke dir für deine ausführliche Hilfe - lesen müßte man können - oh war das eine schwere Geburt. In web benötigte ich Apache 2.2 und php 5.6 - das mußte alles installiert sein und dann nach aktivieren des virtuellen Host alles noch einmal bestätigen.An Der Datenbank Maria DB mußte ich nichts ändern.
Ich wünsche dir einen schönen Abend- und nochmals vielen Dank
VG Manfred
 
Systemweb
Hauptsache es funktioniert jetzt. Dann war die Mühe nicht ganz umsonst.
 
mkasl

Zitat

Systemweb schrieb:

Hauptsache es funktioniert jetzt. Dann war die Mühe nicht ganz umsonst.

Das hat sicherlich nicht nur mir Nerven gekostet - ohne deine Ausdauer hätte ich längst aufgegeben . Jetzt habe ich schon die zweite Fusion innerhalb von 10 Min . drauf .Eins wußte ich nicht .Nach dem erfolgreichen Setup habe ich in Maria DB5 das profis. Passwort geändert - danach ging nichts mehr . Die Setup php mußte ja gelöscht werden . Hatte sie aber vorher auf dem PC gesichert und konnte nun mit dem neuen DB PW schnell ein Setzup wiederholen.
VG Manfred und danke

Zusammengefügt am 14. März 2018 um 20:27:50:
einen Fehler habe ich noch : wenn ich die Seite http://192.168.0.3/mkfusion/news.php aufrufe ist alles OK Rufe ich sie extern auf : http://mkasl.diskstation.me/fusionP/n...P/news.php erreicht man die Seite auch .Auch mit dem Logindaten - aber klicke ich auf Admin springt es gleich wieder zum neuen Login. . Ich kann also nichts bearbeitenDas ist bei beiden Versionen so . bei / mkfusion und auch /fusionP . Forwarding ist OK weil ich ha z.B. eine andere nicht Fusionseite auch von außen erreiche.
VG
Bearbeitet von mkasl am 14.03.2018 um 20:36
 

Springe ins Forum:
Thema Forum Antworten Letzter Beitrag
PHP Fusion Probleme Allgemeine Fragen und Probleme 9 13.04.2018 um 07:03
Fusion V8 Nobody Projektvorstellung 17 01.04.2018 um 13:54
PHP zu Excel (CSV) (PHP Fusion 9) Code Snippets und Funktionen 6 23.03.2018 um 23:04
PHP Fusion exportieren Anfängerfragen 29 19.02.2018 um 14:16
Aktuellste Version des Updates für PHP-Fusion 7.02.07 Informationen 3 02.02.2018 um 11:26