我试图通过我的网址将变量从一个页面传递到另一个页面。网址的结构如下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
,但我不知道该怎么做。如果我在test_portfolio之后添加.php
,那么它可以正常工作,但是当我转储$_GET['location']
时,我得到NULL
。
哦,是的,我正在使用$_GET
检索$location = $_GET["location"];
。
任何帮助都将不胜感激。
答案 0 :(得分:1)
如果您只是想删除.php
,只需添加[QSA]
标记即可复制查询字符串:
RewriteRule ^(.*)$ $1.php [QSA]
答案 1 :(得分:0)
您的网址将来自:
/test
到/test.php?/test?test=test
你确定这是你想要的吗? (看起来格格不入,等等)
通常你会写一个路由器,如:
RewriteRule ^(.*)$ router.php?__url=$1 [QSA]
这会为您提供原始路径GET
参数__url
。 [QSA]
允许您仍然接受所有原始查询参数,例如location
。