首页 > 解决方案 > 获取url参数并保存变量或cookie

问题描述

我有一个新安装的 wordpress 替换旧网站。在旧站点中,用户 mysite.com/123456mysite.com/somename有一个动态引用

现在我必须能够拦截 / 然后123456somename之后存在的所有内容,以将其保存在会话变量或 cookie 中(我可以完全访问服务器)。

我用这段代码做了一些测试:

location / {
add_header Set-Cookie "secret_code=$args;Domain=$site_name;Path=/;Max-Age=31536000;Secure;HTTPOnly" always;
try_files $ uri $ uri / /index.php?$args;
}

但我发现自己作为其他参数的值,很可能用于使 wordpress 本身的调用

还有这个:

location ~ ^/(.+)$ {
add_header Set-Cookie "secret_code=$1;Domain=$site_name;Path=/;Max-Age=31536000;Secure;HTTPOnly" always;
try_files $ uri $ uri / /index.php?$args;
}

但这对 nginx 不起作用,因为它不运行 PHP,它使它们下载

解决这个问题的最好方法是什么

感谢你们

标签: regexwordpressurlnginxurl-redirection

解决方案


我不确定这是否就是你想要的。但是,这是匹配“/”之后的字母数字字符的正则表达式

测试并适用于mysite.com/123456mysite.com/somename

/(?<=mysite.com\/)\w+/

推荐阅读