Debian 10 LAMP VMware apache2 le rooter ne marche
Résolu
Bonjour,
J'ai installé mon site web dans
J'utilise php composer qu'il ne reconnaît pas non plus. Le fichier
On dirait qu'il ne reconnaît pas le chemin.
J'ai essayé bien sûr de mettre
Composer.json
Voilà le fichier
Bon alors le root est assez simple :
J'ai installé mon site web dans
/var/www/html, mais les
includes, requirene marchent pas du tout.
Failed opening required (include_path='.:/usr/share/php')
J'utilise php composer qu'il ne reconnaît pas non plus. Le fichier
rootde mon site web redirige automatiquement l'utilisateur vers la page d'accueil, mais là, c'est une page vide.
On dirait qu'il ne reconnaît pas le chemin.
J'ai essayé bien sûr de mettre
AllowOverride alldans apache2, mais j'obtiens une
Error 500.
// autoload_psr4.php @generated by Composer $vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( 'App\\src\\' => array($baseDir . '/src'), 'App\\config\\' => array($baseDir . '/config'), );
Composer.json
{ "autoload": { "psr-4": { "App\\config\\":"config/", "App\\src\\": "src/" } } }
Voilà le fichier
index:
require '../vendor/autoload.php'; session_start(); // 1 instansiation de la class rooter // 2 appel à la méthode [/download/telecharger-34082922-run run] de de class Router $rooter = new \App\config\Router(); $rooter = $rooter->run();
Bon alors le root est assez simple :
public function run() { $route = $this->_request->getGet()->get('route'); echo '<pre>'; var_dump($this->_request->getPost(), $this->_request->getGet()->get('ticketId')); echo '</pre>'; $session = $this->_request->getSession()->get('route'); try{ if(isset($_GET['route'])) { if($_GET['route'] === 'ticket'){ $this->_frontController->ticket($this->_request->getGet()->get('ticketId')); //>get(nom de ID du lien de la page)); } // route est passée à une méthode appelée ajoutTicket du backController qui prend en paramètre la variable superglobale $_POST elseif($_GET['route'] === 'ajoutTicket'){ $this->_backController->ajoutTicket($this->_request->getPost()); }elseif($_GET['route'] === 'editTicket'){ $this->_backController->editTicket($this->_request->getPost(), $this->_request->getGet()->get('ticketId')); }elseif($_GET['route'] === 'suppTicket'){ $this->_backController->suppTicket($this->_request->getGet()->get('ticketId')); } /* // route est passée à une méthode appelée ajoutTicket du backController qui prend en paramètre la variable superglobale $_POST elseif($_GET['route'] === 'suppTicket'){ $this->_backController->suppTicket($this->_request->getGet()->get('ticketId')); }*/ else{ // aucune action définie : affichage de page 404 + redirect à la page principale $this->_errorController->errorNotFound(); } } else{ //affichage de la page principale $this->_frontController->home(); } } catch (Exception $e) { // aucune action définie : affichage de page 500 + redirect à la page principale $this->_errorController->errorServer(); } } }
Configuration: VM sous Debian 10 LAMP
A voir également:
- Debian 10 LAMP VMware apache2 le rooter ne marche
- Windows 10 ne démarre plus - Guide
- Clé d'activation windows 10 - Guide
- Restauration systeme windows 10 - Guide
- Windows 10 gratuit - Accueil - Mise à jour
- Winrar 64 bits windows 10 - Télécharger - Compression & Décompression
5 réponses
Bonjour,
Je précise tout de suite que je ne connais composer. Pour résoudre ton problème il faut le décomposer
Réponse courte
Il faut distinguer une erreur de permission (accès interdit) qui signifie que le vhost est mal configuré de l'absence de module de php (rien ne s'affiche car les parties entre
Réponse détaillée
1) Est-ce que tu parviens à afficher une page html ?
Exemple :
... puis affiche http://localhost/index.html
2) Est-ce que tu parviens à afficher une exécuter php ?
Exemple :
... puis affiche http://localhost/index.php
3) Voir les problèmes spécifiques à composer (est-ce que la version de php installé permet d'utiliser composer, est-ce que la configuration apache -notamment les redirections- sont correctes, etc).
Sous debian un serveur LAMP s'installe comme suit :
Tu peux vérifier que le module php est installé. Retrouve son nom dans
(Note que respectivement, le désactiver, avec
À ce stade, tout devrait marcher concernant les étapes 1 et 2. Reste avoir la fin, propre au site et plus au serveur lui-même.
Sur le même principe, les différents virtual hosts sont déclarés dans
Bonne chance
Je précise tout de suite que je ne connais composer. Pour résoudre ton problème il faut le décomposer
Réponse courte
Il faut distinguer une erreur de permission (accès interdit) qui signifie que le vhost est mal configuré de l'absence de module de php (rien ne s'affiche car les parties entre
<?php ... ?>ne sont pas interprétables). Ici je suspecte que tu n'as pas installé et/ou activer le module php correspondant et/ou redémarré apache.
Réponse détaillée
1) Est-ce que tu parviens à afficher une page html ?
Exemple :
/var/www/index.html
<html> <body> html marche </body> </html>
... puis affiche http://localhost/index.html
2) Est-ce que tu parviens à afficher une exécuter php ?
Exemple :
/var/www/index.php
<html> <body> html marche <?php echo "php marche"; ?> </body> </html>
... puis affiche http://localhost/index.php
3) Voir les problèmes spécifiques à composer (est-ce que la version de php installé permet d'utiliser composer, est-ce que la configuration apache -notamment les redirections- sont correctes, etc).
Sous debian un serveur LAMP s'installe comme suit :
sudo apt update sudo apt install apache2 default-mysql-server libapache2-mod-php sudo /etc/init.d/apache2 restart
Tu peux vérifier que le module php est installé. Retrouve son nom dans
/etc/apache2/mods-available/. Tu verras par exemple
/etc/apache2/mods-available/php7.4.confet dans ce cas le nom du module est
php7.4. Dans ce cas tu peux activer ce module avec :
sudo a2enmod php7.4
(Note que respectivement, le désactiver, avec
a2dismod).
À ce stade, tout devrait marcher concernant les étapes 1 et 2. Reste avoir la fin, propre au site et plus au serveur lui-même.
Sur le même principe, les différents virtual hosts sont déclarés dans
/etc/apache2/sites-availableet s'activent / désactivent avec
a2ensiteet
a2dissite. Là encore, il faut s'assurer que ton vhost est actif et que sa configuration est correct.
Bonne chance
Re,
Merci pour tes réponses. Malheureusement, ça ne change rien, j'ai réinstallé une Debian 10 virtuelle et c'est le même problème. J'ai essayé sur une machine réelle Windows 10 avec xampp ou wamp et ça marche !! J'arrive à accéder à tous les liens, donc le problème ne vient pas de mon code mais du serveur apache2. Que ce soit le
Je crois que c'est le chemin qu'il ne reconnait pas ou n'arrive pas à accéder. Je ne sais pas comment résoudre ce problème...
Merci pour tes réponses. Malheureusement, ça ne change rien, j'ai réinstallé une Debian 10 virtuelle et c'est le même problème. J'ai essayé sur une machine réelle Windows 10 avec xampp ou wamp et ça marche !! J'arrive à accéder à tous les liens, donc le problème ne vient pas de mon code mais du serveur apache2. Que ce soit le
.htaccessou les redirections du rooter (mon code) sur une machine lamp sous Vmware ou Virtualbox, ça ne marche pas.
Je crois que c'est le chemin qu'il ne reconnait pas ou n'arrive pas à accéder. Je ne sais pas comment résoudre ce problème...
ii apache2 2.4.38-3+deb10u3 amd64 Apach e HTTP Server
ii apache2-bin 2.4.38-3+deb10u3 amd64 Apach e HTTP Server (modules and other binary files)
ii apache2-data 2.4.38-3+deb10u3 all Apach e HTTP Server (common files)
ii apache2-utils 2.4.38-3+deb10u3 amd64 Apach e HTTP Server (utility programs for web servers)
ii libapache2-mod-php7.3 7.3.11-1~deb10u1 amd64 serve r-side, HTML-embedded scripting language (Apache 2 module)
total 0
lrwxrwxrwx 1 root root 36 nov. 28 21:41 access_compat.load -> ../mods-available/access_compat.load
lrwxrwxrwx 1 root root 28 nov. 28 21:41 alias.conf -> ../mods-available/alias.conf
lrwxrwxrwx 1 root root 28 nov. 28 21:41 alias.load -> ../mods-available/alias.load
lrwxrwxrwx 1 root root 33 nov. 28 21:41 auth_basic.load -> ../mods-available/auth_basic.load
lrwxrwxrwx 1 root root 33 nov. 28 21:41 authn_core.load -> ../mods-available/authn_core.load
lrwxrwxrwx 1 root root 33 nov. 28 21:41 authn_file.load -> ../mods-available/authn_file.load
lrwxrwxrwx 1 root root 33 nov. 28 21:41 authz_core.load -> ../mods-available/authz_core.load
lrwxrwxrwx 1 root root 33 nov. 28 21:41 authz_host.load -> ../mods-available/authz_host.load
lrwxrwxrwx 1 root root 33 nov. 28 21:41 authz_user.load -> ../mods-available/authz_user.load
lrwxrwxrwx 1 root root 32 nov. 28 21:41 autoindex.conf -> ../mods-available/autoindex.conf
lrwxrwxrwx 1 root root 32 nov. 28 21:41 autoindex.load -> ../mods-available/autoindex.load
lrwxrwxrwx 1 root root 30 nov. 28 21:41 deflate.conf -> ../mods-available/deflate.conf
lrwxrwxrwx 1 root root 30 nov. 28 21:41 deflate.load -> ../mods-available/deflate.load
lrwxrwxrwx 1 root root 26 nov. 28 21:41 dir.conf -> ../mods-available/dir.conf
lrwxrwxrwx 1 root root 26 nov. 28 21:41 dir.load -> ../mods-available/dir.load
lrwxrwxrwx 1 root root 26 nov. 28 21:41 env.load -> ../mods-available/env.load
lrwxrwxrwx 1 root root 29 nov. 28 21:41 filter.load -> ../mods-available/filter.load
lrwxrwxrwx 1 root root 27 nov. 28 21:41 mime.conf -> ../mods-available/mime.conf
lrwxrwxrwx 1 root root 27 nov. 28 21:41 mime.load -> ../mods-available/mime.load
lrwxrwxrwx 1 root root 34 nov. 28 21:50 mpm_prefork.conf -> ../mods-available/mpm_prefork.conf
lrwxrwxrwx 1 root root 34 nov. 28 21:50 mpm_prefork.load -> ../mods-available/mpm_prefork.load
lrwxrwxrwx 1 root root 34 nov. 28 21:41 negotiation.conf -> ../mods-available/negotiation.conf
lrwxrwxrwx 1 root root 34 nov. 28 21:41 negotiation.load -> ../mods-available/negotiation.load
lrwxrwxrwx 1 root root 29 nov. 28 21:50 php7.3.conf -> ../mods-available/php7.3.conf
lrwxrwxrwx 1 root root 29 nov. 28 21:50 php7.3.load -> ../mods-available/php7.3.load
lrwxrwxrwx 1 root root 33 nov. 28 21:41 reqtimeout.conf -> ../mods-available/reqtimeout.conf
lrwxrwxrwx 1 root root 33 nov. 28 21:41 reqtimeout.load -> ../mods-available/reqtimeout.load
lrwxrwxrwx 1 root root 31 nov. 28 21:41 setenvif.conf -> ../mods-available/setenvif.conf
lrwxrwxrwx 1 root root 31 nov. 28 21:41 setenvif.load -> ../mods-available/setenvif.load
lrwxrwxrwx 1 root root 29 nov. 28 21:41 status.conf -> ../mods-available/status.conf
lrwxrwxrwx 1 root root 29 nov. 28 21:41 status.load -> ../mods-available/status.load
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question