Je suis nouveau dans Apache2 et PHP, depuis quelques jours, j'essaie de trouver un problème ce qui ne va pas avec mon code ou la configuration du serveur. Quand je suis en cours d'exécution d'une simple ligne telle que:Problèmes de routage PHP 7.1
$uri = $_REQUEST['URI'];
echo("$uri");
Je reçois une erreur:
Notice: Undefined index: URI in /var/www/html/...
J'ai besoin $ _REQUEST [ 'URI] pour construire mon propre routeur. Le fichier .htaccess est ajouté au projet, donc apache devrait savoir que je remplacerai les routes. BTW, il ressemble à:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [NC,L]
Bien sûr, je courais script navigateur Web, de sorte que le _REQUEST $ devrait être défini [ 'URI]. Problème apparaître sur: PHP 7.1 + Apache2.4 + Ubuntu16.04
Quelqu'un pourrait-il aider?
URI est une variable de chaîne de requête, n'est-ce pas? I.e http://example.com/?URI=something. Dans tous les cas, je suis presque sûr que vous voulez l'utiliser comme la règle de réécriture: 'RewriteRule^(. *) $ Index.php? URI =% {REQUEST_URI} [NC, QSA, L]' –
Il ne le fait pas travail. Le but est d'obtenir une URL correcte quand quelqu'un tapera dans le navigateur ie example.com/index ou example.com/first_subpage, donc le $ _REQUEST ['URI'] devrait retourner: example.com/index ou example.com/first_subpage dépend de quel utilisateur va taper comme URL. C'est le cas le plus simple du routage de pages Web. La règle que vous avez réécrite fait référence à la transmission d'un argument via l'URL, ce n'est pas ce que j'essaie de faire. – okarmusk