Drupal-Installation nach PHP-Umstellung nicht mehr erreichbar
am 17.02.2017 - 14:32 Uhr in
Hallo, ich wurde zu einer Website "gerufen", die auch schon bisher auf dem aktuellen Drupal 8.2.x läuft,
bin aber nicht der Admin (zudem ist dort alles nicht kommerziell, wie ich auch) und bitte um Hilfe:
Dort hat der Provider den Webserver von PHP 5.6 auf PHP 7.0 umgestellt.
Das ist okay und hat für andere Installationen auf der Domain keine negativen Folgen gehabt, aber:
Beim Aufruf der "Drupal-Webseite" im Verzeichnis www.beispielwebseite.de/drupal ist jetzt ausschließlich zu lesen:
The website encountered an unexpected error. Please try again later.
Ein Einloggen als Webadmin ist nicht möglich.
Folgende Vorschläge aus diesem Forum hab ich erfolglos ausprobiert:
glycid am 22.01.2016:
Das sieht nach einem Rechteproblem aus. Prüfe mal das Theme Verzeichnis.
Sind unverändert okay.
Ariadar am 02.02.2016:
Damit drupal8 endlich sein Theme zeigt muß folgendes gemacht werden, in der Datei /home/web3188/www/drupal8/sites/default/files/.htaccess folgendes auskommentieren:
# Turn off all options we don't need.
#xOptions -Indexes -ExecCGI -Includes -MultiViews
Das hat leider nicht geholfen.
ronald am 23.01.2016: Das habe ich beobachtet wenn Drupal in einem Unterverzeichnis installiert wurde, und dieses nicht in der Settings-Datei eingetragen wurde.
Bitte ronald, welche Settings-Datei ist gemeint und wo finde ich die?
Gruß, Tikita
- Anmelden oder Registrieren um Kommentare zu schreiben
"Modify the RewriteBase" ausprobiert
am 17.02.2017 - 14:41 Uhr
Außerdem soeben noch einen Hinweis vom Forum auf drupal.org ausprobiert;
Änderung in der .htaccess (Zeile 155 ff.), aber leider auch ohne Wirkung:
# Modify the RewriteBase if you are using Drupal in a subdirectory or in a
# VirtualDocumentRoot and the rewrite rules are not working properly.
# For example if your site is at http://example.com/drupal uncomment and
# modify the following line:
RewriteBase /drupal
Es gibt auf dem Webserver
am 17.02.2017 - 16:22 Uhr
Es gibt auf dem Webserver einige Logfiles. Einmal für den Apache und dann für PHP. Welche Fehlermeldungen vom Apache gibt es denn in Deinem Fall? Nach einer PHP-Umstellung kann es sein, daß eine alte Drupal-Installation Fehler auswirft und deshalb Nichts mehr angezeigt wird. Also auch da nach Fehlern suchen. Ohne diese Fehlermeldungen kann man dir vermutlich nicht helfen.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Bei dieser Fehlermeldung
am 17.02.2017 - 20:34 Uhr
ist jede Aktion ein Stochrn im Nebel, wenn man kein logfiles hat.
Diese Meldung besagt, dass ein Fehler mit dem Webserver aufgetreten ist.
Es kann sein, dass hier eine eingestellte Grenze überschritten wurde, oder ein Fehler gefunden wurde, der die Anzeige verhindert.
Da es mit der Umstellung der PHP-Version zusammenzuhängen scheint, kann dies heißen, dass die PHP.ini überschrieben wurde, oder dass Module, die bisher eingebunden waren, deaktiviert wurden.
Genaues erfährt man in den logfiles.
Grüße
Ronald
Ist das das Logfile?
am 18.02.2017 - 00:46 Uhr
Erstmal danke für eure Beachtung meiner Anfrage.
Auf dem Webserver, der per FTP angesteuert werden kann, gibt es neben dem html-Verzeichnis (für Applikationen, dort auch das Drupal-Unterverzeichnis /cms) das Verzeichnis logs, in dem sich eine error_log-Datei befindet.
Ich zitiere, wie dort (m)ein Aufruf der Webseite erfasst wurde:
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: Error: Undefined class constant 'MYSQL_ATTR_USE_BUFFERED_QUERY' in /var/www/web41/html/cms/core/lib/Drupal/Core/Database/Driver/mysql/Connection.php on line 128 #0 /var/www/web41/html/cms/core/lib/Drupal/Core/Database/Database.php(376): Drupal\\Core\\Database\\Driver\\mysql\\Connection::open(Array)
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #1 /var/www/web41/html/cms/core/lib/Drupal/Core/Database/Database.php(166): Drupal\\Core\\Database\\Database::openConnection('default', 'default')
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #2 [internal function]: Drupal\\Core\\Database\\Database::getConnection('default')
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #3 /var/www/web41/html/cms/core/lib/Drupal/Component/DependencyInjection/PhpArrayContainer.php(79): call_user_func_array('Drupal\\\\Core\\\\Dat...', Array)
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #4 /var/www/web41/html/cms/core/lib/Drupal/Component/DependencyInjection/Container.php(177): Drupal\\Component\\DependencyInjection\\PhpArrayContainer->createService(Array, 'database')
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #5 /var/www/web41/html/cms/core/lib/Drupal/Component/DependencyInjection/PhpArrayContainer.php(264): Drupal\\Component\\DependencyInjection\\Container->get('database', 1)
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #6 /var/www/web41/html/cms/core/lib/Drupal/Component/DependencyInjection/PhpArrayContainer.php(62): Drupal\\Component\\DependencyInjection\\PhpArrayContainer->resolveServicesAndParameters(Array)
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #7 /var/www/web41/html/cms/core/lib/Drupal/Component/DependencyInjection/Container.php(177): Drupal\\Component\\DependencyInjection\\PhpArrayContainer->createService(Array, 'cache.container')
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #8 /var/www/web41/html/cms/core/lib/Drupal/Core/DrupalKernel.php(508): Drupal\\Component\\DependencyInjection\\Container->get('cache.container')
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #9 /var/www/web41/html/cms/core/lib/Drupal/Core/DrupalKernel.php(860): Drupal\\Core\\DrupalKernel->getCachedContainerDefinition()
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #10 /var/www/web41/html/cms/core/lib/Drupal/Core/DrupalKernel.php(461): Drupal\\Core\\DrupalKernel->initializeContainer()
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #11 /var/www/web41/html/cms/core/lib/Drupal/Core/DrupalKernel.php(651): Drupal\\Core\\DrupalKernel->boot()
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #12 /var/www/web41/html/cms/index.php(19): Drupal\\Core\\DrupalKernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request))
[Fri Feb 17 15:25:33 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #13 {main}
[Fri Feb 17 15:25:33 2017] [error] [client 78.55.109.87] File does not exist: /var/www/web41/html/favicon.ico
[Fri Feb 17 15:25:33 2017] [error] [client 78.55.109.87] File does not exist: /var/www/web41/html/favicon.ico
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: Error: Undefined class constant 'MYSQL_ATTR_USE_BUFFERED_QUERY' in /var/www/web41/html/cms/core/lib/Drupal/Core/Database/Driver/mysql/Connection.php on line 128 #0 /var/www/web41/html/cms/core/lib/Drupal/Core/Database/Database.php(376): Drupal\\Core\\Database\\Driver\\mysql\\Connection::open(Array)
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #1 /var/www/web41/html/cms/core/lib/Drupal/Core/Database/Database.php(166): Drupal\\Core\\Database\\Database::openConnection('default', 'default')
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #2 [internal function]: Drupal\\Core\\Database\\Database::getConnection('default')
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #3 /var/www/web41/html/cms/core/lib/Drupal/Component/DependencyInjection/PhpArrayContainer.php(79): call_user_func_array('Drupal\\\\Core\\\\Dat...', Array)
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #4 /var/www/web41/html/cms/core/lib/Drupal/Component/DependencyInjection/Container.php(177): Drupal\\Component\\DependencyInjection\\PhpArrayContainer->createService(Array, 'database')
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #5 /var/www/web41/html/cms/core/lib/Drupal/Component/DependencyInjection/PhpArrayContainer.php(264): Drupal\\Component\\DependencyInjection\\Container->get('database', 1)
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #6 /var/www/web41/html/cms/core/lib/Drupal/Component/DependencyInjection/PhpArrayContainer.php(62): Drupal\\Component\\DependencyInjection\\PhpArrayContainer->resolveServicesAndParameters(Array)
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #7 /var/www/web41/html/cms/core/lib/Drupal/Component/DependencyInjection/Container.php(177): Drupal\\Component\\DependencyInjection\\PhpArrayContainer->createService(Array, 'cache.container')
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #8 /var/www/web41/html/cms/core/lib/Drupal/Core/DrupalKernel.php(508): Drupal\\Component\\DependencyInjection\\Container->get('cache.container')
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #9 /var/www/web41/html/cms/core/lib/Drupal/Core/DrupalKernel.php(860): Drupal\\Core\\DrupalKernel->getCachedContainerDefinition()
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #10 /var/www/web41/html/cms/core/lib/Drupal/Core/DrupalKernel.php(461): Drupal\\Core\\DrupalKernel->initializeContainer()
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #11 /var/www/web41/html/cms/core/lib/Drupal/Core/DrupalKernel.php(651): Drupal\\Core\\DrupalKernel->boot()
[Fri Feb 17 15:32:54 2017] [warn] [client 78.55.109.87] mod_fcgid: stderr: #12 /var/www/web41/html/cms/index.php(19): Drupal\\Core\\DrupalKernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request))
zwei Dinge fallen mir auf
am 18.02.2017 - 08:51 Uhr
1. Drupal ist tatsächlich in einem Unterverzeichnis installiert
2. Es handelt sich um viele "Datei nicht gefunden" Fehler
Das heißt aber doch, dass sich in der Dateistruktur etwas verändert hat, oder die Einstellung des Webservers für die Document Root geändert wurde.
Entweder hat Document Root vorher auf html gezeigt, oder auf cms. Je nachdem musst du die .htaccess anpassen.
Wichtig ist auch, dass mod_rewrite aktiviert sein muss.
Das vergessen manche Provider auch.
Kläre das mit deinem Provider.
Grüße
Ronald
"Cache Rebuild" hilft nach Wechsel der PHP Version bei D8
am 19.02.2017 - 18:01 Uhr
Soweit ich mich erinnere, ist Drupal 8 immer etwas "verwirrt" bei einem Wechsel der PHP-Version. Mit einem "Cache Rebuild" ist dann wieder alles gut. Ich weiß leider keinen anderen Weg als "drush cr", da ich grundsätzlich Drush benutze um Drupal zu administrieren. Alles andere kostet mir zu viel Zeit und damit meinen Kunden zu viel Geld.
# DrupalCenter-Moderator # https://www.drupal.org/u/c-logemann
# CTO der Nodegard GmbH: Tech. Concepts | Security + Availability Operations / Wir unterstützen IT-Abteilungen, Agenturen, Freiberufler:innen
Zurück zu PHP 5.6
am 12.03.2017 - 00:12 Uhr
Der Provider ist - auf Wunsch des Drupalseitenbetreibers - zu PHP 5.6 zurückgekehrt.
Die Seite ist wieder erreichbar.
Nur und leider: beim Versuch des Einloggens (../user/login) kommt nach Eingabe von Benutzername und Passwort die Meldung Auf der Website ist ein unvorhergesehener Fehler aufgetreten. Bitte versuchen Sie es später nochmal. (Adresse nun: ../user/1).
Soweit ich mich erinnere, ist Drupal 8 immer etwas "verwirrt" bei einem Wechsel der PHP-Version. Mit einem "Cache Rebuild" ist dann wieder alles gut.
Das wurde dann gemacht, indem über phpMyAdmin alle Tabellen geleert wurden die mit 'cache_' beginnen (gemäß eines Tipps an anderer Stelle in diesem Forum), sowie natürlich auch der Cache des Browsers selbst. Doch auch das macht das Einloggen nicht möglich.
Die error_log-Datei des Webservers verzeichnet:
[Sat Mar 11 23:41:02 2017] [warn] [client 78.55.14.6] mod_fcgid: stderr: Uncaught PHP Exception Symfony\\Component\\Routing\\Exception\\RouteNotFoundException: "Route "simplenews.settings_subscriber" does not exist." at /var/www/web41/html/cms/core/lib/Drupal/Core/Routing/RouteProvider.php line 187
Verwirrend: Es gibt zwar ein Simplenews-Modul für Drupal, doch das ist hier nicht mehr in Verwendung.
Die Hauptfrage dieses Postings ist: wie kommt der User wieder in die Drupalinstallation rein, wie kann eine Anmeldung erzwungen werden?
Gruß, Tikita
Ex-Modul machte Stress
am 19.03.2017 - 10:51 Uhr
In der Datenbank wude mit phpyAdmin in allen Tabellen nach Datensätzen gesucht, die simplenews enthalten - und sie wurden gelöscht.
Anschließend war ein Einloggen wieder möglich.
Bedenklich: das Modul Simplenews war nicht mehr im Gebrauch, nicht aktiviert und hat dennoch diese Probleme verursacht.
Das war es zum Thema "Versuch eines Umstiegs auf PHP 7" mit leidvoller Rückkehr zu PHP 5.6 ;-)
Warnung vor direkter DB-Manipulation
am 19.03.2017 - 14:24 Uhr
Bedenklich: das Modul Simplenews war nicht mehr im Gebrauch, nicht aktiviert und hat dennoch diese Probleme verursacht.
Somit war das Modul wohl nicht sauber deinstalliert worden. Das kann auf unsauberer Programmierung beruhen, ist aber häufiger darauf zurück zu führen, daß Module einfach nur deaktiviert werden und danach das jeweilige Modul aus der Datei-Struktur entfernt wurde.
Die direkte Manipulation der Datenbank ist der letzte Ausweg, wenn man genau weiß, was man macht. Schnell übersieht man diverse Abhängigkeiten in der in der Datenbank, die mit jeder Drupal Major Version zunehmend komplexer wird. Somit sollten solche Lösungswege nicht als erste Möglichkeit propagiert werden, um Probleme in Drupal zu lösen.
Auch die oben getätigte Aussage, daß das Leeren der Tabellen das gleiche ist wie ein Cache Rebuild stimmt nicht ganz. Je nach Caching Strategie des Systems werden bei einer "normalen" Cache-Entleerung auch nicht immer alle Caches erfasst und auch mehr als jene Tabellen, die mit "cache_" anfangen. Dies betrifft z.B. den Menu-Router sowohl bei D7 ("menu_router") noch bei D8 ("router"). Außerdem könnten auch Caching-Mechanismen im Betrieb sein, die andere Datenbank-Systeme benutzen oder das Datei-System zu benutzen wie z.B. die CSS-Aggregation ist auch nicht ungewöhnlich.
# DrupalCenter-Moderator # https://www.drupal.org/u/c-logemann
# CTO der Nodegard GmbH: Tech. Concepts | Security + Availability Operations / Wir unterstützen IT-Abteilungen, Agenturen, Freiberufler:innen