0

我正在尝试通过我的 url 将变量从一个页面传递到另一个页面。url 的结构如下所示http://localhost:8888/test_portfolio?location=ignite_rockford

.htaccess这是我文件中的相关信息:

Options -MultiViews
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ %{REQUEST_FILENAME}.php?/$1?$1=$1
</IfModule></code>

问题似乎出在这一行:RewriteRule ^(.*)$ %{REQUEST_FILENAME}.php?/$1?$1=$1,但我不知道该怎么做。如果我.php在 test_portfolio 之后添加,那么它可以工作,但是当我转储时,$_GET['location']我会得到NULL.

哦,是的,我正在检索$_GET.$location = $_GET["location"];

任何帮助,将不胜感激。

4

2 回答 2

1

如果您只是想删除.php,您可以添加它并复制带有[QSA]标签的查询字符串:

RewriteRule ^(.*)$ $1.php [QSA]
于 2013-02-25T17:20:45.823 回答
0

您的网址将来自:

/test/test.php?/test?test=test你确定这是你想要的吗?(除其他外,它看起来格式不正确)

通常你会写一个像这样的路由器:

RewriteRule ^(.*)$ router.php?__url=$1 [QSA]

这将为您提供带有原始路径的GET参数。将允许您仍然接受所有原始查询参数,例如.__url[QSA]location

于 2013-02-25T17:22:35.070 回答