当前位置:首页 > PHP教程 > php高级应用 > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2021-12-07 16:11:23 浏览: 评论:0 

这篇文章主要介绍了PHP+Apache实现二级域名之间共享cookie的方法,涉及Apache的配置、hosts修改及php cookie操作相关实现技巧,需要的朋友可以参考下。

本文实例讲述了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

  1. <VirtualHost 127.0.0.1:80> 
  2.   ServerName koastal.com 
  3.   ServerAlias www.koastal.com  
  4.   DocumentRoot D:\wamp64\vhosts\www 
  5.   <Directory "D:\wamp64\vhosts\www"
  6.     Options +Indexes +Includes +FollowSymLinks +MultiViews 
  7.     AllowOverride All 
  8.     Require local 
  9.   </Directory> 
  10. </VirtualHost> 
  11. <VirtualHost 127.0.0.1:80> 
  12.   ServerName login.koastal.com 
  13.   DocumentRoot D:\wamp64\vhosts\login 
  14.   <Directory "D:\wamp64\vhosts\login"
  15.     Options +Indexes +Includes +FollowSymLinks +MultiViews 
  16.     AllowOverride All 
  17.     Require local 
  18.   </Directory> 
  19. </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

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

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

  1. <form action="#" method="post"
  2. <p>username:<input type="text" name="username"></p> 
  3. <p>password:<input type="password" name="password"></p> 
  4. <p><input type="submit" name="submit" value="submit"></p> 
  5. </form> 
  6. <?php 
  7. if(isset($_POST['submit'])){ 
  8.   setcookie('username',$_POST['username'],0,'/','koastal.com'); 
  9.   setcookie('password',$_POST['password'],0,'/','koastal.com'); 
  10.   header('Location:http://www.koastal.com'); 

亲测可用,全文完~

Tags: PHP+Apache cookie

分享到: