我有下面的.htaccess,根据我的规则,我的index.php是我的默认值,是我访问所有的地方,我想要做我的导航,这个索引还恢复变量url:
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1
然后我有我的函数getHome()来处理url,现在我只是回显我的$ url,它应该得到url传递的值:
function getHome(){
$url = $_GET['url'];
echo $url;
}
我的index.php比我调用我的getHome(),现在我正在测试,在我的网址上传递一些值。
但是当我将一些随机值传递到我的网址时,我总是得到#34;找不到对象!....错误404"
但是我想回应一下我在网址中传递的价值。
你看到我做错了什么吗?
更新
我的代码中有<?
<?php
的实例,现在我有一个错误:
注意:未定义的索引:$ url = $ _GET中的网址[&#39; url&#39;];
我将我的功能更新为:
$url = isset($_GET['url']);
现在我没有未定义的索引错误,但我之前有相同的错误,当我将一些随机值传递给我的URL时,我总是得到我的&#34;找不到对象...错误404&#34;。
答案 0 :(得分:2)
检查是否启用了mod_rewrite,并检查网络服务器配置是否允许使用.htaccess文件 - 有关详细说明,请参阅http://httpd.apache.org/docs/2.2/mod/core.html#allowoverride。
答案 1 :(得分:1)
这应该可行,但作为替代方案,您也可以使用:
$url = $_SERVER['REQUEST_URI'];
然后您不必检查是否设置了任何内容或在重写规则中传递查询变量。