Php $\你什么也得不到
我第一次尝试使用php构建一个路由 我想要这样的链接:Php $\你什么也得不到,php,.htaccess,url-routing,Php,.htaccess,Url Routing,我第一次尝试使用php构建一个路由 我想要这样的链接: http://localhost/controller/action 这是我的.htaccess文件: Options +FollowSymLinks RewriteEngine on RewriteRule ^([a-zA-Z]*)/?([a-zA-Z]*)?/?([a-zA-Z0-9]*)?/?$ index.php?controller=$1&action=$2&id=$3 [NC,L] 我想访问$\u GET['
http://localhost/controller/action
这是我的.htaccess文件:
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^([a-zA-Z]*)/?([a-zA-Z]*)?/?([a-zA-Z0-9]*)?/?$ index.php?controller=$1&action=$2&id=$3 [NC,L]
我想访问$\u GET['controller']
和$\u GET['action']
,但它给出了-未定义的索引错误
var\u dump($\u GET)
返回
数组(大小=0)
空的
问题是,您的正则表达式没有那么严格,斜杠(但不是最后一个)不能是可选的,这样才能正常工作。你也应该避开斜线
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^([a-zA-Z]+)\/([a-zA-Z]+)\/([a-zA-Z0-9]+)\/?$ index.php?controller=$1&action=$2&id=$3 [NC,L]
您是否尝试过禁止空组?例如,
([a-zA-Z]+)
而不是([a-zA-Z]*)
?我刚才试过了。还是有同样的问题。也许你应该关闭“多视图”选项看看这个,我把它关掉了。仍然有同样的问题@lvaroGonzález粘贴如何添加它try youurl.com/aaa/bbb/ccc并告诉我你用print_r()得到了什么结果我得到了这个错误:404找不到请求的URL/aaa/bbb/ccc在这个服务器上找不到。try^(.*)$index.php?var=$1并告诉我结果返回:404找不到localhost/aaais mod rewrite安装?