PHP+Apache实现二级域名之间共享cookie的方法


Posted in PHP onJuly 24, 2019

本文实例讲述了PHP+Apache实现二级域名之间共享cookie的方法。分享给大家供大家参考,具体如下:

简介

login.koastal.com设置domain为koastal.com,则www.koastal.com即可访问该cookie。
也就是说二级域名(或者三级域名)之间可以通过这种方式共享cookie。
其实cookie的domain属性的用法跟path有些类似,比如我们将cookie的path设置为/,则/user目录下也可以访问该cookie。

实践

Apache同一端口对应不同域名

httpd-vhosts.conf

<VirtualHost 127.0.0.1:80>
  ServerName koastal.com
  ServerAlias www.koastal.com 
  DocumentRoot D:\wamp64\vhosts\www
  <Directory "D:\wamp64\vhosts\www">
    Options +Indexes +Includes +FollowSymLinks +MultiViews
    AllowOverride All
    Require local
  </Directory>
</VirtualHost>
<VirtualHost 127.0.0.1:80>
  ServerName login.koastal.com
  DocumentRoot D:\wamp64\vhosts\login
  <Directory "D:\wamp64\vhosts\login">
    Options +Indexes +Includes +FollowSymLinks +MultiViews
    AllowOverride All
    Require local
  </Directory>
</VirtualHost>

修改本机hosts

windows

C:WINDOWS/system32/drivers/etc/hosts

linux

vim /etc/hosts

在最后添加

127.0.0.1  www.koastal.com login.koastal.com

编写php代码进行测试

D:\wamp64\vhosts\www\index.php

<?php
if(isset($_COOKIE['username'])){
  echo "welcome to ".$_COOKIE['username'];
  var_dump($_COOKIE);
}else{
?>
<h1><a href='http://login.koastal.com'>Login</a></h1>
<?php
}

D:\wamp64\vhosts\login\index.php

<form action="#" method="post">
<p>username:<input type="text" name="username"></p>
<p>password:<input type="password" name="password"></p>
<p><input type="submit" name="submit" value="submit"></p>
</form>
<?php
if(isset($_POST['submit'])){
  setcookie('username',$_POST['username'],0,'/','koastal.com');
  setcookie('password',$_POST['password'],0,'/','koastal.com');
  header('Location:http://www.koastal.com');
}

亲测可用,全文完~

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php 解决旧系统 查出所有数据分页的类
Aug 27 PHP
PHP合并两个数组的两种方式的异同
Sep 14 PHP
PHP.ini中配置屏蔽错误信息显示和保存错误日志的例子
May 12 PHP
Javascript与PHP验证用户输入URL地址是否正确
Oct 09 PHP
php采集内容中带有图片地址的远程图片并保存的方法
Jan 03 PHP
php实现指定字符串中查找子字符串的方法
Mar 17 PHP
php格式化电话号码的方法
Apr 24 PHP
php类的扩展和继承用法实例
Jun 20 PHP
php gd等比例缩放压缩图片函数
Jun 12 PHP
PHP获取不了React Native Fecth参数的解决办法
Aug 26 PHP
ubutu 16.04环境下,PHP与mysql数据库,网页登录验证实例讲解
Jul 20 PHP
深入浅析安装PhpStorm并激活的步骤详解
Sep 17 PHP
PHP容器类的两种实现方式示例
Jul 24 #PHP
使用swoole 定时器变更超时未支付订单状态的解决方案
Jul 24 #PHP
thinkphp5.1框架容器与依赖注入实例分析
Jul 23 #PHP
Thinkphp5 自定义上传文件名的实现方法
Jul 23 #PHP
PHP中__set()实例用法和基础讲解
Jul 23 #PHP
PHP大文件分块上传功能实例详解
Jul 22 #PHP
PHP商品秒杀问题解决方案实例详解【mysql与redis】
Jul 22 #PHP
You might like
Yii安装与使用Excel扩展的方法
2016/07/13 PHP
PHP中递归的实现实例详解
2017/11/14 PHP
js的with语句使用方法
2007/09/21 Javascript
Javascript学习笔记4 Eval函数
2010/01/11 Javascript
JQuery datepicker 使用方法
2011/05/20 Javascript
可插入图片的TEXT文本框
2013/12/27 Javascript
js控制鼠标事件移动及移出效果显示
2014/10/19 Javascript
Jquery简单实现GridView行高亮的方法
2015/06/15 Javascript
jquery中的常见问题及快速解决方法小结
2016/06/14 Javascript
javascript判断firebug是否开启的方法
2016/11/23 Javascript
JS请求servlet功能示例
2017/06/01 Javascript
用javascript获取任意颜色的更亮或更暗颜色值示例代码
2017/07/21 Javascript
详解AngularJS跨页面传值(ui-router)
2017/08/23 Javascript
细说webpack源码之compile流程-rules参数处理技巧(1)
2017/12/26 Javascript
vue-cli 3.x 配置Axios(proxyTable)跨域代理方法
2018/09/19 Javascript
如何基于JavaScript判断图片是否加载完成
2019/12/28 Javascript
[52:52]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第三局
2016/02/27 DOTA
浅谈python中截取字符函数strip,lstrip,rstrip
2015/07/17 Python
python字典的常用操作方法小结
2016/05/16 Python
Python使用回溯法子集树模板获取最长公共子序列(LCS)的方法
2017/09/08 Python
Python实现比较扑克牌大小程序代码示例
2017/12/06 Python
Python简单实现查找一个字符串中最长不重复子串的方法
2018/03/26 Python
TensorFlow设置日志级别的几种方式小结
2020/02/04 Python
keras绘制acc和loss曲线图实例
2020/06/15 Python
JD Sports芬兰:英国领先的运动鞋和运动服饰零售商
2018/11/16 全球购物
SmartBuyGlasses德国:购买太阳镜和眼镜
2019/08/20 全球购物
限量版运动鞋和街头服饰:TheDrop
2020/09/06 全球购物
婚礼新郎父母答谢词
2014/01/16 职场文书
交通事故检查书范文
2014/01/30 职场文书
中文专业求职信
2014/06/20 职场文书
企业安全生产月活动总结
2014/07/05 职场文书
离婚协议书范文2014(夫妻感情破裂)
2014/12/14 职场文书
2015年全国保险公众宣传日活动方案
2015/05/06 职场文书
励志语录:时光飞逝,请学会珍惜所有的人和事
2020/01/16 职场文书
php 防护xss,PHP的防御XSS注入的终极解决方案
2021/04/01 PHP
详解Mysql和Oracle之间的误区
2021/05/18 MySQL