如果我使用.htaccess mod重写规则,PHP Cookie不可用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如果我使用.htaccess mod重写规则,PHP Cookie不可用相关的知识,希望对你有一定的参考价值。
我正在使用.htaccess重写规则。我的规则是
Options -MultiViews
RewriteEngine on
RewriteRule ^Login login.php [NC,L]
RewriteRule ^Register register.php [NC,L]
RewriteRule ^Posts/([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+) posts.php?category=$1&subcategory=$2 [NC,L]
一切都很完美,但问题在于:
如果我访问
<a href='Login'>Login</a> from website home page it is redirecting to login.php that is perfectly working
但如果我访问
<a href='Login'>Login</a> from website posts page it is redirecting to Posts/login.php which is incorrect. It should redirect to login.php only.
为了解决这个问题,我在登录按钮中使用了直接页面
<a href='http://www.mywebsite.com/Login'>Login</a>
它的工作完全正常,但问题是,cookie不可用,因为我需要在每个页面的cookie中保持城市名称。
检查我的网站链接:http://fidfeet.com/Login,http://fidfeet.com/Categories/Login
第一个是工作,因为我在主页,但第二个不工作,因为我在类别页面。
答案
您的链接指向相对路径,这就是他们没有从子目录解析到同一位置的原因。他们应该指向/ Login以引用root的Login。
从第一个路径定义cookie后,cookie在第二个路径上可用。右上方有一个框,列出我选择的城市。
以上是关于如果我使用.htaccess mod重写规则,PHP Cookie不可用的主要内容,如果未能解决你的问题,请参考以下文章