下面是我的。htaccess规则:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*)/(.*)$ index.php?var1=$1&item=$2&var2=%{REQUEST_URI} [NC,L]
RewriteRule ^(.*)$ index.php?var1=$1 [NC]

下面是一个URL(用在端尾随点): http://localhost/test/secondvar.

的问题是,在后点不在var2 GET变量内部发出

我使用的print_r($_GET),这里是与上述URL的结果:

Array ( [var1] => test [var2] => secondvar [uri] => /test/secondvar. )

所以我的问题是,如何获取从URL尾随点作为参数的变种?正如你所看到的,REQUEST_URI是显示了apache点的都知道。

我知道我不能发送路径,GET参数和照顾阅读URI中PHP的路径,但我想知道为什么点不来,以及如何解决它,如果太复杂了我而走了,直接PHP溶液。

编辑:不仅尾随点,但尾随?太... = [

有帮助吗?

解决方案

有可能只是PHP排除小圆点。我知道,他们经常转换点在POST / GET为下划线。我只想做

explode('/',$_SERVER['REQUEST_URI'])
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top