You are not logged in.
Bonjour,
Avec GLPI-9.2.4 pleinement fonctionnel (y compris CAS), j'ai essayé les mises à jour vers 9.3.1, 9.3.2 et 9.4.0. Elles ont toutes échoué, GLPI ne détectant pas php-cas.
Le serveur est constitué de deux Debian-9.8, une avec apache-2.4.25 et l'autre avec php-7.0.33.
Le proxy_fastcgi est utilisé pour faire communiquer les machines :
RewriteRule glpi/(.*\.php([/\?].*)?)$ fcgi://php70a.supagro.inra.fr:9004/srv/glpi/$1 [P][L]
La mise à jour est faite en décompactant glpi-9.4.0.tgz, puis copie de l'ancien fichier de configuration (glpi/config/config_db.php), installation des plugins depuis leurs archives respectives et copie de glpi/files/. Les permissions sur les répertoires et les fichiers sont vérifiées.
À chaque fois, le premier écran indique que tout est bon sauf php-cas, manquant.
Le fichier glpi/files/_log/php-errors.log contient (mise à jour vers glpi-9.4.0) :
[2019-02-25 14:48:52] glpiphplog.WARNING: Test logger
[2019-02-25 14:48:53] glpiphplog.ERROR: Toolbox::userErrorHandlerNormal() in /srv/glpi/inc/toolbox.class.php line 659
*** PHP Warning(2): file_exists(): open_basedir restriction in effect. File(/usr/sbin/getenforce) is not within the allowed path(s): (/srv/glpi/:)
Backtrace :
:
inc/toolbox.class.php:1120 file_exists()
inc/toolbox.class.php:1099 Toolbox::checkSELinux()
inc/config.php:187 Toolbox::commonCheckForUseGLPI()
inc/includes.php:48 include_once()
front/mailcollector.php:33 include()
{"user":"482@php70a"}
[2019-02-25 14:50:06] glpiphplog.ERROR: Toolbox::userErrorHandlerNormal() in /srv/glpi/inc/toolbox.class.php line 659
*** PHP Warning(2): get_headers(): http:// wrapper is disabled in the server configuration by allow_url_fopen=0
Backtrace :
:
inc/telemetry.class.php:160 get_headers()
inc/telemetry.class.php:53 Telemetry::grabWebserverInfos()
inc/telemetry.class.php:274 Telemetry::getTelemetryInfos()
inc/crontask.class.php:829 Telemetry::cronTelemetry()
front/cron.php:61 CronTask::launch()
{"user":"482@php70a"}
[2019-02-25 14:50:07] glpiphplog.ERROR: Toolbox::userErrorHandlerNormal() in /srv/glpi/inc/toolbox.class.php line 659
*** PHP Warning(2): get_headers(): This function may only be used against URLs
Backtrace :
:
inc/telemetry.class.php:160 get_headers()
inc/telemetry.class.php:53 Telemetry::grabWebserverInfos()
inc/telemetry.class.php:274 Telemetry::getTelemetryInfos()
inc/crontask.class.php:829 Telemetry::cronTelemetry()
front/cron.php:61 CronTask::launch()
{"user":"482@php70a","mem_usage":"0.002\", 9.44Mio)"}
[2019-02-25 14:50:07] glpiphplog.ERROR: Toolbox::userErrorHandlerNormal() in /srv/glpi/inc/toolbox.class.php line 659
*** PHP Warning(2): file_exists(): open_basedir restriction in effect. File(/etc/redhat-release) is not within the allowed path(s): (/srv/glpi/:)
Backtrace :
:
inc/telemetry.class.php:216 file_exists()
inc/telemetry.class.php:55 Telemetry::grabOsInfos()
inc/telemetry.class.php:274 Telemetry::getTelemetryInfos()
inc/crontask.class.php:829 Telemetry::cronTelemetry()
front/cron.php:61 CronTask::launch()
{"user":"482@php70a","mem_usage":"0.000\", 9.44Mio)"}
[2019-02-25 14:50:20] glpiphplog.NOTICE: Dropdown::show() in /srv/glpi/inc/dropdown.class.php line 84
Using a string in condition option is deprecated. {"user":"482@php70a"}
[2019-02-25 14:50:20] glpiphplog.NOTICE: Dropdown::addNewCondition() in /srv/glpi/inc/dropdown.class.php line 284
Using a string in dropdown condition is deprecated. {"user":"482@php70a","mem_usage":"0.002\", 30.35Mio)"}
[2019-02-25 14:50:44] glpiphplog.ERROR: Auth::getAlternateAuthSystemsUserLogin() in /srv/glpi/inc/auth.class.php line 385
CAS lib not installed {"user":"@php70a"}
[2019-02-25 14:50:56] glpiphplog.ERROR: Auth::getAlternateAuthSystemsUserLogin() in /srv/glpi/inc/auth.class.php line 385
CAS lib not installed {"user":"@php70a"}
[2019-02-25 14:51:18] glpiphplog.ERROR: Auth::getAlternateAuthSystemsUserLogin() in /srv/glpi/inc/auth.class.php line 385
CAS lib not installed {"user":"@php70a"}
[2019-02-25 14:51:37] glpiphplog.ERROR: Toolbox::userErrorHandlerNormal() in /srv/glpi/inc/toolbox.class.php line 659
*** PHP User Error(256): BAD JOIN, value must be [ table => criteria ]
Backtrace :
:
inc/dbmysqliterator.class.php:619 trigger_error()
inc/dbmysqliterator.class.php:281 DBmysqlIterator->analyzeJoins()
inc/dbmysqliterator.class.php:94 DBmysqlIterator->buildQuery()
inc/dbmysql.class.php:569 DBmysqlIterator->execute()
inc/reminder.class.php:980 DBmysql->request()
inc/planning.class.php:1955 Reminder::populatePlanning()
inc/planning.class.php:1857 Planning::constructEventsArraySingleLine()
ajax/planning.php:43 Planning::constructEventsArray()
{"user":"37@php70a"}
[2019-02-25 14:52:53] glpiphplog.ERROR: Auth::getAlternateAuthSystemsUserLogin() in /srv/glpi/inc/auth.class.php line 385
CAS lib not installed {"user":"@php70a"}
Est-ce qu'il y a quelque chose que je devrais tenter pour que cette montée de version se passe bien ?
Merci pour vos réponses,
--
Philippe
Offline
Bonjour.
Dans le processus de mise à jour, la vérification de php-cas est optionnelle et vous devriez pouvoir "continuer".
Si vous utilisez vraiment une connexion CAS (si vous ne savez pas ce que c'est, probablement que non), sur debian installez simplement le paquet en question (apt install php-cas) sinon ignorez l'avertissement.
Offline
Bonjour et merci pour le réponse,
Ma faute : j'aurais dû lire le CHANGELOG.md !
## [9.3.0] 2018-06-28
#### Removed
- PHPCas library is no longer provided (for licensing issues)
Comme notre instance utilise php-cas, j'ai tenté de remettre la bibliothèque (en copiant le répertoire glpi/vendor/jasig/), mais ça ne suffit visiblement pas. Du coup, je reste avec la version 9.2.4, le temps d'informer les collègues du changement de mode d'authentification.
Le message d'erreur dans les versions 9.3 et suivantes (probablement dû à la configuration de l'authentification CAS dans la table glpi_configs) mentionne explicitement l'absence de php-cas alors que celui-ci est installé et qu'il fonctionne avec glpi-9.2.4 : peut être y a t'il quelque chose à améliorer de ce côté, ou tout simplement à supprimer.
Mais dans tous les cas : pas de bug ! Mes excuses pour le bruit,
--
Philippe
Offline
Comme indiqué, si ce paquet vous est necéssaire, sur debian c'est très simple:
apt install php-cas
Offline