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 相关文章推荐
如何开发一个虚拟域名系统
Oct 09 PHP
mysql4.1以上版本连接时出现Client does not support authentication protocol问题解决办法
Mar 15 PHP
PHP 编写的 25个游戏脚本
May 11 PHP
字母顺序颠倒而单词顺序不变的php代码
Aug 08 PHP
如何在PHP中使用正则表达式进行查找替换
Jun 13 PHP
PHP连接SQLServer2005方法及代码
Dec 26 PHP
php+mysql实现数据库随机重排实例
Oct 17 PHP
PHP面试常用算法(推荐)
Jul 22 PHP
php封装的单文件(图片)上传类完整实例
Oct 18 PHP
php调用云片网接口发送短信的实现方法
Oct 25 PHP
浅析PHP echo 和 print 语句
Jun 30 PHP
PHP实现计算器小功能
Aug 28 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
phpmailer在服务器上不能正常发送邮件的解决办法
2014/07/08 PHP
19个Android常用工具类汇总
2014/12/30 PHP
Codeigniter校验ip地址的方法
2015/03/21 PHP
Smarty模板变量调节器用法分析
2016/05/23 PHP
理清PHP在Linxu下执行时的文件权限方法
2017/06/07 PHP
javascript 极速 隐藏/显示万行表格列只需 60毫秒
2009/03/28 Javascript
jquery 防止表单重复提交代码
2010/01/21 Javascript
jquery随机展示头像代码
2011/12/21 Javascript
JavaScript 用Node.js写Shell脚本[译]
2012/09/20 Javascript
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
2013/04/08 Javascript
JavaScript实现数据类型的相互转换
2016/03/06 Javascript
BootStrap智能表单实战系列(三)分块表单配置详解
2016/06/13 Javascript
微信小程序 WXML、WXSS 和JS介绍及详解
2016/10/08 Javascript
Vue.js创建Calendar日历效果
2016/11/03 Javascript
Three.js基础部分学习
2017/01/08 Javascript
浅谈JavaScript中promise的使用
2017/01/11 Javascript
JS简单判断函数是否存在的方法
2017/02/13 Javascript
vue.js模仿京东省市区三级联动的选择组件实例代码
2017/11/22 Javascript
JS实现多物体运动的方法详解
2018/01/23 Javascript
node.js连接mysql与基本用法示例
2019/01/05 Javascript
vue项目中运用webpack动态配置打包多种环境域名的方法
2019/06/24 Javascript
浅谈vue 锚点指令v-anchor的使用
2019/11/13 Javascript
vue路由结构可设一层方便动态添加路由操作
2020/08/31 Javascript
vue 数据双向绑定的实现方法
2021/03/04 Vue.js
python 安装virtualenv和virtualenvwrapper的方法
2017/01/13 Python
python中安装Scrapy模块依赖包汇总
2017/07/02 Python
Python不使用int()函数把字符串转换为数字的方法
2018/07/09 Python
对pandas通过索引提取dataframe的行方法详解
2019/02/01 Python
Python函数的参数常见分类与用法实例详解
2019/03/30 Python
Django ImageFiled上传照片并显示的方法
2019/07/28 Python
python使用信号量动态更新配置文件的操作
2020/04/01 Python
css3制作动态进度条以及附加jQuery百分比数字显示
2012/12/13 HTML / CSS
HTML5 Canvas 绘图——使用 Canvas 绘制图形图文教程 使用html5 canvas 绘制精美的图
2015/08/31 HTML / CSS
美国药妆网站:EDCskincare.com(防晒、痤疮、抗衰老等)
2017/04/28 全球购物
阿迪达斯印尼官方网站:adidas印尼
2020/02/10 全球购物
MutationObserver在页面水印实现起到的作用详解
2022/07/07 Javascript