Conf serveur local LAMP, fichier connect.php, 127.0.0.1 ok, localhost ko

Bonjour,
Tout est dans le titre :wink:
Plus sérieusement, je me suis monté un énième serveur local, cette fois-ci sous xubuntu 16.04, avec apache 2.4.18, php-fpm 5.6.30 (compilé depuis les sources), mysql 5.7.18, et des sites en spip 3.1.4.

Si dans le fichier connect.php je mets en source :
spip_connect_db('127.0.0.1','','usermysql','mdpmysql','base_spip_mysql','mysql', 'spip','','utf8');

ça marche nickel.

mais si je mets:
spip_connect_db('localhost','','usermysql','mdpmysql','base_spip_mysql','mysql', 'spip','','utf8');

j'écope alors d'un:
Site en travaux
Attention : un problème technique (serveur SQL) empêche l’accès à cette partie du site. Merci de votre compréhension.

C’est la première fois que je suis confronté à ça, et je n'arrive pas à trouver quel réglage modifier pour pouvoir utiliser ce bon vieux localhost au lieu de 127.0.0.1.

Mon fichier /etc/hosts comporte bien un 127.0.0.1 localhost et mon user mysql a bien dans ses privilège:
GRANT ALL PRIVILEGES ON *.* TO 'user'@'localhost' WITH GRANT OPTION;

Je sèche. Ce n'est pas bien grave car avec 127.0.0.1 au lieu de localhost, j'arrive à tourner, mais je n'ai jamais eu à modifier ça auparavant, et j’aimerai donc bien comprendre, ne serait-ce au moins que par curiosité. Comme je me suis déjà bien fait bien suer à essayer de comprendre et réussir finalement à faire tourner plusieurs version de php-fpm sous apache, j’avoue que j'arrive à saturation pour ce nouveau défi inattendu. Quelqu'un aurait une idée SVP ?

Le 19/05/2017 à 22:12, 6ril a écrit :

Bonjour,
Tout est dans le titre :wink:
Plus sérieusement, je me suis monté un énième serveur local, cette
fois-ci sous xubuntu 16.04, avec apache 2.4.18, php-fpm 5.6.30 (compilé
depuis les sources), mysql 5.7.18, et des sites en spip 3.1.4.

Si dans le fichier connect.php je mets en source :
spip_connect_db('127.0.0.1','','usermysql','mdpmysql','base_spip_mysql','mysql',
'spip','','utf8');

ça marche nickel.

mais si je mets:
spip_connect_db('localhost','','usermysql','mdpmysql','base_spip_mysql','mysql',
'spip','','utf8');

j'écope alors d'un:
Site en travaux
Attention : un problème technique (serveur SQL) empêche l’accès à cette
partie du site. Merci de votre compréhension.

C’est la première fois que je suis confronté à ça, et je n'arrive pas à
trouver quel réglage modifier pour pouvoir utiliser ce bon vieux
localhost au lieu de 127.0.0.1.

Mon fichier /etc/hosts comporte bien un 127.0.0.1 localhost et mon user
mysql a bien dans ses privilège:
GRANT ALL PRIVILEGES ON *.* TO 'user'@'localhost' WITH GRANT OPTION;

Je sèche. Ce n'est pas bien grave car avec 127.0.0.1 au lieu de
localhost, j'arrive à tourner, mais je n'ai jamais eu à modifier ça
auparavant, et j’aimerai donc bien comprendre, ne serait-ce au moins que
par curiosité. Comme je me suis déjà bien fait bien suer à essayer de
comprendre et réussir finalement à faire tourner plusieurs version de
php-fpm sous apache, j’avoue que j'arrive à saturation pour ce nouveau
défi inattendu. Quelqu'un aurait une idée SVP ?

Bonjour,
ça n'était pas particulièrement propre à spip en fait, j'ai trouvé la solution grâce à

avec cette réponse:

et celle-ci:

Il me fallait donc en fait indiquer dans php.ini le socket mysql (je l'ai fait partout mais j'imagine que pour spip en particulier pdo aurait suffit ?):
mysql.default_socket =/var/run/mysqld/mysqld.sock
mysqli.default_socket =/var/run/mysqld/mysqld.sock
pdo_mysql.default_socket=/var/run/mysqld/mysqld.sock
après m'être enquis du chemin de ce socket:
'show variables where variable_name = "socket"'

A présent je peux me connecter avec localhost comme 127.0.0.1