首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >来自HTACCESS url的$_GET值

问来自HTACCESS url的$_GET值
EN

Stack Overflow用户
提问于 2016-01-26 19:34:07
回答 1查看 329关注 0票数 0

不用说,我对HTACCESS一无所知。我正在用PHP编写一个推荐系统,虽然当我使用HTACCESS使URL更漂亮时,它会停止工作。示例:

从…

代码语言:javascript
复制
http://localhost/ref.php?referral=1

至

代码语言:javascript
复制
http://localhost/ref/1

现在代码可以工作了,当我使用HTACCESS的时候它就停止工作了,我记得我从某个地方读到,如果我没有错的话,你不能从一个通过HTACCESS的网址使用_GET函数?尽管如此,我还是尝试了HTACCESS规则,但它似乎不起作用。当它丢弃cookie时,它会按照它告诉的代码进行重定向,但当我使用缩短的URL时,它实际上并没有丢弃cookie。

代码语言:javascript
复制
RewriteRule ^ref/([^/]+)(|/)$ /ref.php?referral=$1

脚本的代码,如果它有助于理解问题..

代码语言:javascript
复制
    if (isset($_GET['referral']))
{
    $value = $_GET['referral']; // Let's set the cookie value
    // Drop the cookie, let it expire in an hour. 
    setcookie("HHRefCookie", $value, time()+3600);
    // Redir them to register page
    header("Location: " . WWW . "/register");
}

以我的理解,这应该是可行的吗?如果不是的话。如有反馈,将不胜感激。对于正确方向的指导,我们将非常感激!

EN

回答 1

Stack Overflow用户

发布于 2016-01-26 19:46:53

你看过服务器返回的状态码了吗?我看不出您提供的重写规则如何与您正在使用的URL模式匹配(即,我希望服务器返回404)。

尝试:

代码语言:javascript
复制
RewriteRule ^/ref/(.*)$ /ref.php?referral=$1 [L]

(如果这是Apache2.4,则使用END而不是L)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35012904

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档