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 str_pad 函数使用详解
Jan 13 PHP
解析php中的fopen()函数用打开文件模式说明
Jun 20 PHP
PHP内核探索:变量存储与类型使用说明
Jan 30 PHP
查找php配置文件php.ini所在路径的二种方法
May 26 PHP
ThinkPHP行为扩展Behavior应用实例详解
Jul 22 PHP
php缩放gif和png图透明背景变成黑色的解决方法
Oct 14 PHP
php通过rmdir删除目录的简单用法
Mar 18 PHP
PHP数组去重比较快的实现方式
Jan 19 PHP
PHP编写RESTful接口的方法
Feb 21 PHP
Yii2表单事件之Ajax提交实现方法
May 04 PHP
详解PHP文件的自动加载(autoloading)
Feb 04 PHP
php使用mysqli和pdo扩展,测试对比连接mysql数据库的效率完整示例
May 09 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
Codeigniter中mkdir创建目录遇到权限问题和解决方法
2014/07/25 PHP
php验证码实现代码(3种)
2015/09/07 PHP
javascript removeChild 使用注意事项
2009/04/11 Javascript
JavaScript 密码强度判断代码
2009/09/05 Javascript
MC Dialog js弹出层 完美兼容多浏览器(5.6更新)
2010/05/06 Javascript
使用Jquery打造最佳用户体验的登录页面的实现代码
2011/07/08 Javascript
js 链式延迟执行DOME
2012/01/04 Javascript
html5+javascript制作简易画板附图
2014/04/25 Javascript
Ext GridPanel加载完数据后进行操作示例代码
2014/06/17 Javascript
Node.js异步I/O学习笔记
2014/11/04 Javascript
JS动态修改图片的URL(src)的方法
2015/04/01 Javascript
Windows系统下使用Sublime搭建nodejs环境
2015/04/13 NodeJs
JS自动倒计时30秒后按钮才可用(两种场景)
2015/08/31 Javascript
基于socket.io+express实现多房间聊天
2016/03/17 Javascript
谈一谈js中的执行环境及作用域
2016/03/30 Javascript
Three.js学习之正交投影照相机
2016/08/01 Javascript
Yarn的安装与使用详细介绍
2016/10/25 Javascript
Javascript的this用法
2017/01/16 Javascript
微信小程序扫描二维码获取信息实例详解
2019/05/07 Javascript
element-ui table组件如何使用render属性的实现
2019/11/04 Javascript
python单例模式实例解析
2018/08/28 Python
python 批量添加的button 使用同一点击事件的方法
2019/07/17 Python
Python scrapy增量爬取实例及实现过程解析
2019/12/24 Python
使用tensorboard可视化loss和acc的实例
2020/01/21 Python
谈谈python垃圾回收机制
2020/09/27 Python
pycharm 实现光标快速移动到括号外或行尾的操作
2021/02/05 Python
Weekendesk意大利:探索多种引人入胜的周末主题
2016/10/14 全球购物
歌唱比赛获奖感言
2014/01/21 职场文书
经济信息系毕业生自荐信范文
2014/03/15 职场文书
安全横幅标语
2014/06/09 职场文书
2015年街道除四害工作总结
2015/05/15 职场文书
匿名信格式范文
2015/05/27 职场文书
唐山大地震的观后感
2015/06/05 职场文书
大学生村官驻村工作心得体会
2016/01/23 职场文书
英语教学课后反思
2016/02/15 职场文书
2016年离婚协议书范文
2016/03/18 职场文书