2012-08-22 49 views
0

我知道这个问题可能已经被问了好几次了,但说实话我还没有找到完整的答案。Mod_rewrite - 不要在url中显示某个查询字符串

我有这样的URL: modelDetails.php manufacturerName = $ 1 & manfuacturerID = $ 16 & MODELNAME = $ 3 & modelID = $ 4 & yachtCode = $ 5 &郎= $ 6

是否有可能不显示yachtCode和朗在网址中,仍然传递页面之间的值? 这是我htacces文件:

Options +FollowSymlinks 
RewriteEngine on 
RewriteRule ^(.*)\.html$ $1.php [nc] 
RewriteCond %{QUERY_STRING} ^lang=(EN|DE|NL)$ [NC] 
RewriteRule ^(.*)/([0-9]+)/(.*)/([0-9]+)/([0-9]+)$ modelDetails.php?manufacturerName=$1&manufacturerID=$2&modelName=$3&modelID=$4&yachtCode=$5 [L,QSA] 

回答

0

如果从查询字符串中删除的数据,那么唯一的其他方式访问数据是从一个cookie检索。但要设置Cookie,您必须在某个时间点将yachtCode值显示在查询字符串中。

唯一的选择是使用POST(网页表单使用的模式)而不是GET(通常使用的模式)。 POST模式提交变量作为请求的一部分,而不是将变量添加到查询字符串中。但是你不能强制超链接使用POST模式,所以这可能对你没有用处。

总之,您可能无法完全隐藏最终用户的yachtcode。