Contenu | Rechercher | Menus

Annonce

Ubuntu 16.04 LTS
Commandez vos DVD et clés USB Ubuntu-fr !

Pour en savoir un peu plus sur l'équipe du forum.

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

#1 Le 11/08/2017, à 14:47

lemirandais

2 vers php avec un serveur apache2

Bonjour à tous

Suite à la mort d'un vieux serveur (windows), j'ai été contraint de mettre en place (contraint, je suis quand même très comptant), un mini serveur (sur un vieux celeron D) un LAMP.
J'ai fait mon install, la config, tout marche. Enfin, presque.
En effet, quand j'ai déplacé les applications php (qui tournait à la base sous wamp), 2 d'entres elles ne fonctionnent plus. Et oui, elles sont codé en php 4 et 5!!!
Ayant trouvé un article très intéressant, j'ai donc suivi ce tutoriel https://devoralive.com/system-admin/dual-php-apache/ pour faire cohabiter php 5.6 et php 7. Et cela marche!
Enfin, pour le dossier /var/www

Hors, pour mon dossier lié à mon virtualhost (/home/www/), non!

Voici mon virtualhost:

<VirtualHost *:80>
    ServerName toto.local
    ServerAlias www.toto.local
    ServerAlias *.toto.local
    ServerAdmin webmaster@toto.local
    DocumentRoot "/home/www/toto.local"

    <Directory /home/www/toto.local>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
        Require all granted
    </Directory>

    RewriteEngine on
        
        # Domaine principal, redirection vers dossier /www/
        RewriteCond %{HTTP_HOST} ^toto\.local
        RewriteRule ^(.*) /www/$1 [L]

        # Sous-domaine(s), redirection vers les sous dossiers
        RewriteCond %{HTTP_HOST} ^([^\.]+)\.toto\.local
        RewriteCond /home/www/toto.local/%1 -d
        RewriteRule ^(.*) /%1/$1 [L]
</VirtualHost>

Au niveau des dossiers dans lequel je souhaite que soit activé php 5.6 (php7 par défaut), je met un htaccess avec ces éléments:

<FilesMatch "\.php$">
        SetHandler php5.fcgi
</FilesMatch>

Quand je charge un phpinfo(); j'obtiens un not found:  The requested URL /php5.fcgi/phpinfo.php was not found on this server.
Dans le fichier log: [Fri Aug 11 12:08:50.843215 2017] [fastcgi:error] [pid 2264] (2)No such file or directory: [client 192.168.1.50:51047] FastCGI: stat() of "/home/www/toto.local/www/php5.fcgi" failed, referer: http://toto.local/

Je précise que quand je met le même htaccess dans /var/www, cela fonctionne!!!!

J'ai l'impression qu'il cherche un dossier php5.fcgi, mais je ne vois pas comment résoudre mon soucis.
Vous auriez une orientation. Etant pas mal occupé ces temps-ci, je ne vois pas comment m'organiser pour re-coder mes vieilles applications en version php7.

Merci d'avance.

Dernière modification par lemirandais (Le 11/08/2017, à 14:53)

Hors ligne

#2 Le 14/08/2017, à 05:53

Vobul

Re : 2 vers php avec un serveur apache2

Salut,

Et si tu mets un chemin absolu pour php5.fcgi ?

Bon sinon je conseille fortement des containers Docker, c'est nickel pour ce genre de choses. Mais le mieux c'est quand même de prendre le temps de régler les problèmes de compatibilité. Ça vaut le coup php7 en terme de performances ! Et si ton truc tourne avec 5.6, y'a pas grand chose d'incompatible pour migrer à 7 (http://php.net/manual/en/migration70.incompatible.php) à moins de faire des trucs bizarres.


Vobul

Hors ligne

#3 Le 14/08/2017, à 11:50

lemirandais

Re : 2 vers php avec un serveur apache2

Vobul a écrit :

Salut,

Et si tu mets un chemin absolu pour php5.fcgi ?

Bon sinon je conseille fortement des containers Docker, c'est nickel pour ce genre de choses. Mais le mieux c'est quand même de prendre le temps de régler les problèmes de compatibilité. Ça vaut le coup php7 en terme de performances ! Et si ton truc tourne avec 5.6, y'a pas grand chose d'incompatible pour migrer à 7 (http://php.net/manual/en/migration70.incompatible.php) à moins de faire des trucs bizarres.

Merci pour cette réponse.
Quand je met le chemin absolu, mon fichier phpinfo.php n'est plus interprété!

Pourquoi pas docker, très simple machine 32bits!

Pour re-coder les incompatibilités, pour l'instant, pas le temps!! En effet, si je commence à vouloir re-coder les fonctionnalités HS, se sera sur mon heure perso et donc pas payé!!!

Hors ligne