[英]PHP 7.1 routing problems
我是apache2和php的新手,因为几天来我一直在寻找一个问题,我的代码或服务器配置有什么问题。 当我运行诸如以下的简单行时:
$uri = $_REQUEST['URI'];
echo("$uri");
我收到一个错误:
Notice: Undefined index: URI in /var/www/html/...
我需要$ _REQUEST ['URI']来建立自己的路由器。 文件.htaccess已添加到项目中,因此apache应该知道我将覆盖路由。 顺便说一句,它看起来像:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [NC,L]
当然,我是从Web浏览器运行脚本的,因此应定义$ _REQUEST ['URI']。 问题出现在:PHP 7.1 + Apache2.4 + Ubuntu16.04
有人可以帮忙吗?
正如@EduardoEscobar所说,您要尝试执行的操作是:
$uri = $_SERVER['REQUEST_URI'];
echo("$uri");
在您的.htaccess文件中,只需添加
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.php?url=$1 [QSA,L]
</IfModule>
然后在您的主要index.php文件中,将URL捕获为
<?php echo $_GET['url']; ?>
因此,如果用户打开例如example.com/test
之类的页面,则输出将为test
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.