Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.htaccess 发送路径并访问index.php_.htaccess - Fatal编程技术网

.htaccess 发送路径并访问index.php

.htaccess 发送路径并访问index.php,.htaccess,.htaccess,让我举个例子: 我使用浏览器打开此地址:http://localhost/AAA/BBB/CCC?id=5&foo=bar 我想编写一个.htaccess,隐式地将链接转换为:http://localhost/index.php?route=/AAA/BBB/CCC&id=5&foo=bar 无论目的地链接是什么,我都不在乎;我只希望它同时包含路径和GET请求。请注意,某些URL(如以下URL)不包含任何参数,但必须正确解析: http://localhost/AAA/BBB 将转换为http:

让我举个例子:

我使用浏览器打开此地址:
http://localhost/AAA/BBB/CCC?id=5&foo=bar

我想编写一个
.htaccess
,隐式地将链接转换为:
http://localhost/index.php?route=/AAA/BBB/CCC&id=5&foo=bar

无论目的地链接是什么,我都不在乎;我只希望它同时包含路径和GET请求。请注意,某些URL(如以下URL)不包含任何参数,但必须正确解析:
http://localhost/AAA/BBB
将转换为
http://localhost/index.php?route=/AAA/BBB


提前感谢

您只需捕获存在的任何请求url并将其附加为“路由”:


附带说明:如果您可以访问真实的服务器配置,那么您更喜欢使用
.htaccess
样式的文件。这些文件使事情变得更加复杂,出了名的容易出错,使服务器运行缓慢

它的可能副本很酷,但有一个小问题,就是如果有人在GET中指定了route,事情就会搞混:
localhost/test?get1=5&get2=10&route=asd
当然,但您对此无能为力。您有名称冲突,重写无法“修复”该冲突。为此,您必须使用脚本。当然,您应该确保您选择了一个标识符,该标识符在整个逻辑中不会被其他方式使用。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.php?route=$1 [L,QSA]