Problemlösung für ini_set() mit Drupal 6.x

Schon bei der Installation von Drupal ergeben sich folgende Fehlermeldung die durchgehend angezeigt werden:


Warning: ini_set() has been disabled for security reasons in .../sites/default/settings.php on line 137

Warning: ini_set() has been disabled for security reasons in .../sites/default/settings.php on line 138
Warning: ini_set() has been disabled for security reasons in .../sites/default/settings.php on line 139
Warning: ini_set() has been disabled for security reasons in .../sites/default/settings.php on line 140
Warning: ini_set() has been disabled for security reasons in .../sites/default/settings.php on line 141
Warning: ini_set() has been disabled for security reasons in .../sites/default/settings.php on line 142
Warning: ini_set() has been disabled for security reasons in .../sites/default/settings.php on line 143
Warning: ini_set() has been disabled for security reasons in .../sites/default/settings.php on line 144
Warning: ini_set() has been disabled for security reasons in .../sites/default/settings.php on line 145
Warning: ini_set() has been disabled for security reasons in .../sites/default/settings.php on line 146
Warning: ini_set() has been disabled for security reasons in .../sites/default/settings.php on line 147
Warning: ini_set() has been disabled for security reasons in .../sites/default/settings.php on line 148
Warning: ini_set() has been disabled for security reasons in .../includes/bootstrap.ini on line 391

Systemkonfiguration:
Drupal: 6.14
MySQL-Datenbank 5.0.16
PHP 5.2.4
Webserver Microsoft-IIS/6.0

T-Online hat die „ini_set()“ Funktionalität deaktiviert und kann daher von Drupal und anderen CMS nicht genutzt werden. Somit ist es der settings.php Datei nicht gestattet ini-Dateien der PHP-Installation zu modifizieren.

Möglicher Lösungsansatz:

  1. Die folgende Zeilen 137-148 müssen in der sites/default/settings.php auskommentiert werden, das Ergebnis sieht so aus:

  2. ...
    // ini_set('arg_separator.output', '&');
    // ini_set('magic_quotes_runtime', 0);
    // ini_set('magic_quotes_sybase', 0);
    // ini_set('session.cache_expire', 200000);
    // ini_set('session.cache_limiter', 'none');
    // ini_set('session.cookie_lifetime', 2000000);
    // ini_set('session.gc_maxlifetime', 200000);
    // ini_set('session.save_handler', 'user');
    // ini_set('session.use_cookies', 1);
    // ini_set('session.use_only_cookies', 1);
    // ini_set('session.use_trans_sid', 0);
    // ini_set('url_rewriter.tags', '');
    ...

  3. Unter includes/bootstrap.inc wird die Zeile 391 auskommentiert:

  4. ...
    // ini_set('session.cookie_domain', $cookie_domain);
    ...

  5. Damit diese Informationen aber trotzdem Übermittelt werden, wird die Datei .htaccess etwas erweitert:

  6. # PHP 4, Apache 1.
    <IfModule mod_php4.c>
    php_value magic_quotes_gpc 0
    php_value register_globals 0
    php_value session.auto_start 0
    php_value mbstring.http_input pass
    php_value mbstring.http_output pass
    php_value mbstring.encoding_translation 0
    php_value arg_separator.output &
    php_value magic_quotes_runtime 0
    php_value magic_quotes_sybase 0
    php_value session.cache_expire 200000
    php_value session.cache_limiter none
    php_value session.cookie_lifetime 2000000
    php_value session.gc_maxlifetime 200000
    php_value session.save_handler user
    php_value session.use_only_cookies 1
    php_value session.use_trans_sid 0
    php_value session.cookie_domain $cookie_domain

    </IfModule>
    # PHP 4, Apache 2.
    <IfModule sapi_apache2.c>
    php_value magic_quotes_gpc 0
    php_value register_globals 0
    php_value session.auto_start 0
    php_value mbstring.http_input pass
    php_value mbstring.http_output pass
    php_value mbstring.encoding_translation 0
    php_value arg_separator.output &
    php_value magic_quotes_runtime 0
    php_value magic_quotes_sybase 0
    php_value session.cache_expire 200000
    php_value session.cache_limiter none
    php_value session.cookie_lifetime 2000000
    php_value session.gc_maxlifetime 200000
    php_value session.save_handler user
    php_value session.use_only_cookies 1
    php_value session.use_trans_sid 0
    php_value session.cookie_domain $cookie_domain

    </IfModule>
    # PHP 5, Apache 1 and 2.
    <IfModule mod_php5.c>
    php_value magic_quotes_gpc 0
    php_value register_globals 0
    php_value session.auto_start 0
    php_value mbstring.http_input pass
    php_value mbstring.http_output pass
    php_value mbstring.encoding_translation 0
    php_value arg_separator.output &
    php_value magic_quotes_runtime 0
    php_value magic_quotes_sybase 0
    php_value session.cache_expire 200000
    php_value session.cache_limiter none
    php_value session.cookie_lifetime 2000000
    php_value session.gc_maxlifetime 200000
    php_value session.save_handler user
    php_value session.use_only_cookies 1
    php_value session.use_trans_sid 0
    php_value session.cookie_domain $cookie_domain

    </IfModule>
    ...

  7. Fertig!

Nützlicher Link:
http://www.homepage-faqs.de/index.php?site=anleitung-drupal-bei-cybton

Ihr könnt die geänderten Dateien auch downloaden:

AnhangGröße
ini_set_Lösung.zip17.4 KB
2.666665
Durchschnitt: 2.7 (6 Bewertungen)

Hallo! Vielen Dank für diesen

Hallo!

Vielen Dank für diesen Beitrag aber ich habe da noch eine Frage:

Ist die Verwendung der folgenden Zeile in der .htaccess überhaupt sinnvoll?

php_value session.cookie_domain $cookie_domain

Die Variable cookie_domain ist doch eine lokale Variable aus der bootstrap.inc oder nicht? Sollte das stimmen, müsste man in der .htaccess die Variable durch ihren Wert ersetzen:

php_value session.cookie_domain .meinedomain.de

MfG, Andreas

hm hoffe auch ;) habe mich

hm hoffe auch ;)
habe mich gerade mal bei meinem webhoster informiert, er meint drupal wäre kein Problem. Bekomme nach abspeichern der Datenbank dann diese Meldung:

user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY fit DESC LIMIT 0, 1' at line 1 query: SELECT * FROM menu_router WHERE path IN () ORDER BY fit DESC LIMIT 0, 1 in /var/kunden/webs/web3372/drupalde/includes/menu.inc on line 315.
user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY fit DESC LIMIT 0, 1' at line 1 query: SELECT * FROM menu_router WHERE path IN () ORDER BY fit DESC LIMIT 0, 1 in /var/kunden/webs/web3372/drupalde/includes/menu.inc on line 315.

Hast du eine Ahnung was ich machen kann?^^ Muss ich vielleicht was an der Datenbank ändern?

Du musst die Datenbank in

Du musst die Datenbank in Mysql löschen und die install.php erneut aufrufen. Das Problem tritt auf wenn bei der Installation keine Cookies im Browser erlaubt sind. Achte darauf Cookies zu aktivieren. Die Installation sollte dann funtionieren.

Oh man, sorry wenn ich dich

Oh man, sorry wenn ich dich damit nerve^^
Also cookies sind erlaubt, irgendwie will es immernoch nicht ....

Hast du auch den Cache, und

Hast du auch den Cache, und Cookies deines Browsers gelöscht. Vielleicht mal unter einem anderen Datenbanknamen ausprobieren. Mit welchem Browser arbeitest du? Was du auch machen kannst, zu erst das System auf deinem lokalen Rechner installieren und dann Online stellen.

ja dann probier ich das

ja dann probier ich das gleich mal offline aus, daran habe ich noch gar nicht gedacht, danke ;)

Hallo, habe deinen

Hallo,
habe deinen Anleitungen für Drupal gefolgt, komme auch bis zur Datenbank und wenn ich dann auf Speichern gehe, kommen wieder die Fehlermeldungen.

Kannst du mir die 3 Dateien von dir bearbeitet per Mail schicken?
Wäre dir sehr dankbar!

Dateien sind als Anhang!

Hi Mike,
freut mich wenn ich dir weiterhelfen kann!
Hier sind die Dateien.

Gutes gelingen!

Danke dir, klappt leider

Danke dir,
klappt leider trotzdem nicht, passiert das selbe an der selben Stelle...
Liegt wohl an meinem Webhost =(

Danke dir trotzdem!

Den Kopf nicht hängen lassen. Die

Den Kopf nicht hängen lassen.
Die Woche kann nur besser werden ;-)