konfiguration in php aendern -wie geht das!?

Alles, was PHP betrifft, kann hier besprochen werden.

konfiguration in php aendern -wie geht das!?

Postby salsa_experience » 03. June 2010 22:44

hallo hab lampps auf opensuse 11.2 installiert

frage: wie kann ich denn die konfiguration ändern?

SAFE-Mode und so weiter. DAS steht z.B. auf off

diese und weiter Einstelllungen will ich aendern. Gern erfahr ich wie das geht.

Gruss
se
salsa_experience
 
Posts: 104
Joined: 25. August 2006 10:46

Re: konfiguration in php aendern -wie geht das!?

Postby Altrea » 03. June 2010 22:56

salsa_experience wrote:frage: wie kann ich denn die konfiguration ändern?

Das kommt ganz drauf an, WELCHE Konfiguration du ändern möchtest. Apache, PHP und MySQL haben jeder ihre eigene(n) Konfigurationsdatei(en).

salsa_experience wrote:SAFE-Mode und so weiter.

Safe-Mode ist eine PHP Einstellung. die Konfiguration von PHP wird in der php.ini Datei geregelt.

salsa_experience wrote:DAS steht z.B. auf off

Was ist daran schlecht? Safe Mode ist seit PHP 5.3 als Deprecated markiert und wird in PHP6 nichtmehr vorhanden sein!
Siehe dazu Safe Mode @ php.net

Safe Mode ist übrigens nicht die einzige Einstellung die als Deprecated markiert ist.
Siehe dazu http://www.php.net/manual/de/migration53.deprecated.php
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 11926
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 11 Pro x64

Re: konfiguration in php aendern -wie geht das!?

Postby salsa_experience » 04. June 2010 19:21

hallo Altrea, guten Abend. Ich freu mich dass du geschrieben hast. Super.

Also - was ich grade mache ist eine joomla 1.6 beta 2 auf ein LAMP - basierend auf OpenSuse 11.2 zu installieren: Dabei muss ich schon sagen: die neue Version der Joomla macht tierischen Aufstand bei der Installatoin.
Bei einer Installation von 1.6 beta2 krieg ich nur Stress; Die Fehler häufen sich. Das ganze spielt sich auf einem lamp auf opensuse 11.2 ab: Da hab ich mal eine Demo-Installation versucht. Leider gibts nur Errors.
Ich glaub ich brauch jetzt für meinen lamp ein neues php.ini - siehe auch unten.

Was bisher geschah: Es ist soviel passiert dass ich schon zwischenzeitlich in die php.ini eingegriffen.

ich glaub, dass ich was falsch gemacht habe:

Strict Standards: Non-static method JFilterInput::clean() should not be called statically in /opt/lampp/htdocs/uni/libraries/joomla/application/component/controller.php on line 203


in Zeile 516 der php.ini steht drinne:

error_reporting = E_ALL | E_STRICT

ich habe daraus folgendes gemacht: error_reporting = E_ALL & ~(E_NOTICE | E_STRICT)

jetzt habe ich noch viel viel verrücktere Fehler:

Code: Select all
 Strict Standards: Only variables should be assigned by reference in /opt/lampp/htdocs/uni/libraries/joomla/application/application.php on line 140
Strict Standards: Declaration of JAdministrator::getRouter() should be compatible with that of JApplication::getRouter() in /opt/lampp/htdocs/uni/administrator/includes/application.php on line 299
Strict Standards: Only variables should be assigned by reference in /opt/lampp/htdocs/uni/libraries/joomla/utilities/utility.php on line 83
Strict Standards: Only variables should be assigned by reference in /opt/lampp/htdocs/uni/libraries/joomla/factory.php on line 499


und so weiter und so fort. Echt - ich glaub ich habe was falsch gemacht bei der Editierung der php.ini.

Das merkwürdige: Wenn ich unter dem LAMP mal die php-konfiguration auf dem Browser ansehe. Das kann man ja - und bei der Konfigurations-Einstellung Error-Reporting nachsehe: dann steht da was sehr sehr merkwürdiges:

error_reporting 32767 | 32767

ich weiß nicht mehr was davor drinnegestanden hat - also als ich noch nicht editiert habe.
Wer kann aushelfen.. Freu mich auf Tipps. Hmm - was kann ich jetzt tun?

Dabei gilt ja eigentlich nach meinem Wissenstand eines: Der Wert entspricht E_ALL|E_STRICT bei PHP ab 5.3 (also zusätzlich noch E_DEPRECATED).

Frage: gehört Joomla zu den PHP Anwendungen, die meinen am error_reporting selber rumschrauben zu müssen, dann bekomm ich die Warnmeldungen wohl nicht weg. Für PHP 5.3 sollte der Wert


E_ALL & ~(E_NOTICE | E_STRICT | E_DEPRECATED) sein (als Int: 22519)


Was meint ihr denn!? Ich glaub ich brauch jetzt für meinen lamp ein neues php.ini
Wer kann mir aushelfen mit einer neuen - nigelnagelneuen php.ini - ich brauche jetzt so eine!


Wer mir helfen kann - oder auch nur eine irgendwie geartete Idee hat - der soll sich bitte melden.
Vielen Dank schon jetzt.


Gruß
SE
salsa_experience
 
Posts: 104
Joined: 25. August 2006 10:46

Re: konfiguration in php aendern -wie geht das!?

Postby Altrea » 04. June 2010 21:18

salsa_experience wrote:hallo Altrea, guten Abend. Ich freu mich dass du geschrieben hast. Super.

Guten Abend salsa_experience. Ich freue mich, dass du dich freust :D

salsa_experience wrote:Also - was ich grade mache ist eine joomla 1.6 beta 2 auf ein LAMP - basierend auf OpenSuse 11.2 zu installieren:

Ist ja erstmal nichts verwerfliches. Du hast aber noch mit keinem Wort erwähnt, welches LAMP Paket du einsetzt (neben XAMPP - wozu dieses Forum hier gehört - gibt es noch diverse vorinstallierte Pakete, wie eben auch eines von OpenSuse). Nun ist es sicher verständlich, dass wir hier nicht für jedes Paket individuellen Support leisten können. Dafür sind die Einstellungsmöglichkeiten zwischen den Einzelkomponenten, und damit auch die möglichen Fehlerursachen, einfach zu groß. Bei Grundsetzlichen Dingen wie einzelnen PHP-Einstellungen (wie in deinem Fall error_reporting) wird einem hier aber auch in der Regel geholfen.

salsa_experience wrote:Bei einer Installation von 1.6 beta2 krieg ich nur Stress;

Oberste Regel bei sowas: Nur nicht stressen lassen. Dann lieber die ganze Sache ein paar Stunden ruhen lassen bis man sich wieder gesammelt hat und danach wieder weiterversuchen. Im Stress macht man mehr Fehler und lässt sich schneller dazu hinleiten viele Einstellungen an unterschiedlichsten Stellen zu tätigen, ohne groß darüber nachzudenken. Und dann steht man hinterher da und blickt durch seine eigene Konfiguration nichtmehr durch.

salsa_experience wrote:Die Fehler häufen sich. ... Leider gibts nur Errors.

hehe, auch hier muss man ein wenig Unterscheiden. PHP selbst hilft dir schon dabei, Meldungen nach seiner Dringlichkeit zu ordnen indem es sie kategorisiert. Neben Errors (die es in jedem Fall zu vermeiden gilt) gibt es auchnoch Warnings (die man sich auf jeden Fall ansehen sollte, die aber in der Regel nicht so dringlich sind, dass sie das Script zum erliegen bringen) und Notices (da zähle ich mal die ganzen Strict-/ und Deprecated Meldungen mit dazu. Diese Meldungen haben informationscharakter und sind in der Regel von der harmloseren Sorte).

salsa_experience wrote:
Strict Standards: Non-static method JFilterInput::clean() should not be called statically in /opt/lampp/htdocs/uni/libraries/joomla/application/component/controller.php on line 203


Code: Select all
 Strict Standards: Only variables should be assigned by reference in /opt/lampp/htdocs/uni/libraries/joomla/application/application.php on line 140
Strict Standards: Declaration of JAdministrator::getRouter() should be compatible with that of JApplication::getRouter() in /opt/lampp/htdocs/uni/administrator/includes/application.php on line 299
Strict Standards: Only variables should be assigned by reference in /opt/lampp/htdocs/uni/libraries/joomla/utilities/utility.php on line 83
Strict Standards: Only variables should be assigned by reference in /opt/lampp/htdocs/uni/libraries/joomla/factory.php on line 499


Hier haben wir einige dieser schönen strict-Meldungen. Strict-Meldungen sind dafür da, Codestellen zu finden, die jetzt noch vollkommen okay und funktional sind, in späteren PHP-Versionen aber unter Umständen zu problemen führen können. Bei einem Projekt wie Joomla, was permanent von einem Entwicklerstamm weiterentwickelt wird, ist die Ausgabe von Strict-Meldungen unnötig.
Nötig sind sie meist nur da, wo man selbst Webanwendungen entwickelt, oder Webanwendungen von anderen weiterentwickelt. Heißt in deinem Fall: Brauchst du nicht.

salsa_experience wrote:Ich glaub ich brauch jetzt für meinen lamp ein neues php.ini

Ich glaube nicht. Wir schauen nur, dass wir eine error_reporting Einstellung für dich finden.

salsa_experience wrote:in Zeile 516 der php.ini steht drinne:

error_reporting = E_ALL | E_STRICT

Diese Einstellung sagt nichts anderes aus als "Zeige mir Meldungen an, wenn sie entweder zur Kategorie ALLE gehören, ODER vom Typ E_STRICT sind.
Dies bedeutet soviel wie: Gib mir einfach alles aus, egal was es ist. In deinem Fall natürlich völlig überzogen.

salsa_experience wrote:ich habe daraus folgendes gemacht: error_reporting = E_ALL & ~(E_NOTICE | E_STRICT)

Da E_STRICT sowieso nicht in E_ALL drin steckt, hättest du auch einfach E_ALL & ~E_NOTICE schreiben können. Das ist übrigens auch die Standardeinstellung von PHP4 und PHP5.
Diese Einstellung heißt soviel wie "Zeige mir Meldungen an, die zur Kategorie ALLE gehören, AUSSER wenn sie vom Typ E_NOTICE sind. Da E_STRICT Meldungen nicht in E_ALL enthalten sind, werden auch diese nicht angezeigt.
Dies ist eine sehr sinnvolle Einstellung, da sie nur die Meldungen ausgibt, die man auf jeden Fall zumindest prüfen (Warnings) oder behandlen (Errors) muss.

salsa_experience wrote:ich glaub ich habe was falsch gemacht bei der Editierung der php.ini.

Ich glaube nicht. Vermutlich hast du nach der Änderung der php.ini nur vergessen diese zu speichern oder den Apache neuzustarten. Änderungen werden nämlich erst nach einem Neustart wirksam.

salsa_experience wrote:Das merkwürdige: Wenn ich unter dem LAMP mal die php-konfiguration auf dem Browser ansehe. Das kann man ja - und bei der Konfigurations-Einstellung Error-Reporting nachsehe: dann steht da was sehr sehr merkwürdiges:

error_reporting 32767 | 32767

Dabei gilt ja eigentlich nach meinem Wissenstand eines: Der Wert entspricht E_ALL|E_STRICT bei PHP ab 5.3 (also zusätzlich noch E_DEPRECATED).

Das ist ganz und garnicht merkwürdig, wenn man bedenkt, dass error_reporting Zahlen als Parameter erwartet. Die Werte die du dort einträgst (E_ALL, E_STRICT, E_NOTICES, etc) sind lediglich von PHP definierte Konstanten die jeder für sich eine Zahl representieren. Und mit den jeweiligen Bit-Operatoren (& | ~ ^) werden diese einzelnen Werte miteinander verrechtet.

32767 heißt übrigens, wie du richtig erkannt hast, E_ALL (30719) + E_STRICT (2048), oder anders ausgedrückt E_ALL | E_STRICT

salsa_experience wrote:ich weiß nicht mehr was davor drinnegestanden hat - also als ich noch nicht editiert habe.
Wer kann aushelfen.. Freu mich auf Tipps. Hmm - was kann ich jetzt tun?

Nicht schlimm. Wir schreiben einfach was Sinnvolles rein, wie zum Beispiel E_ALL & ~E_NOTICES

salsa_experience wrote:Frage: gehört Joomla zu den PHP Anwendungen, die meinen am error_reporting selber rumschrauben zu müssen, dann bekomm ich die Warnmeldungen wohl nicht weg.

Dafür kenne ich Joomla zuwenig. Aber in der Regel kann man bei Anwendungen die das error_reporting selbst manipulieren in der Anwendungseigenen Konfiguration Werte dafür einstellen.

salsa_experience wrote:Für PHP 5.3 sollte der Wert
E_ALL & ~(E_NOTICE | E_STRICT | E_DEPRECATED) sein (als Int: 22519)

Auch dies ist eine sinnvolle Einstellung (wieder mit der Einschrännkung, dass E_STRICT eh nicht in E_ALL drin ist, dessen nennung hier also vollkommen unnötig ist). Deprecated-Meldungen führen, ähnlich wie Strict-Meldungen, Codestellen auf, die jetzt noch vollkommen okay und lauffähig sind, aber als veraltet gekennzeichnet sind und in späteren PHP-Versionen entfernt werden.
Joomla 1.6 sollte mit Deprecated-Meldungen aber keine Probleme mehr haben. Soweit ich informiert bin ist Joomla 1.6 vollkommen PHP 5.3 fähig.
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 11926
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 11 Pro x64

Re: konfiguration in php aendern -wie geht das!?

Postby salsa_experience » 04. June 2010 23:12

hallo - vielen Dank für deine super-hilfreiche Post.

Dein Posting ist total hilfreich:

welches LAMP ich einsetze: XAMPP als LamPP - auf einer OpenSuse 11.2

vorweg. Was sofort auffällt ist folgendes: Ich hab den apache nicht neu gestartet!
Das hab ich nicht gemacht. Das mach ich jetzt als erstes mal. Dann meld ich mich wieder - am Woechenende.


Update: Der Neustart hats gebracht. Jetzt ist erstmal alles okay. Vielen Vielen Dank für die tolle Hilfe.

BTW: Werde sicher noch oefter kommen. Denn es macht total Spass mit dem Xampp bzw. Lampp zu arbeiten.

viele Gruesse
matze aka se
salsa_experience
 
Posts: 104
Joined: 25. August 2006 10:46


Return to PHP

Who is online

Users browsing this forum: No registered users and 16 guests