Day32
Session 与Cookie
Session 和 Cookies的概念
session :存储在服务器端,保护用户名、登录状态信息。
cookies:由服务器下发给客户端,保存在客户端的一个文件里。保存的内容主要包括:SessionID
环境准备
1.准备两台搭建了nginx服务的并且实现动静分离的服务器
2.搭建一台nginx代理服务器搭建集群
3.关闭所有机器的防火墙和selinux
本地Session
php默认sessionID存储路径 /var/lib/php/session/
memcached概述
数据存储对比
性能
CPU缓存>内存>磁盘>数据库
价格
CPU缓存>内存>磁盘>数据库
memcached 简介
memcached 是高性能的分布式缓存服务器
用来集中缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的响应速度。
安装memcached
yum -y install memcached
启动memcached
systemctl start memcached
测试memcached
yum -y install telnel //用于远程登录,本次用于测试memcached
telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
指令 名字 是否压缩 存储时间 存储字符数
add name 0 180 10 //变量不存在添加
set name 0 180 10 //添加或替换变量
replace name 0 180 //替换
get name //读取变量
delete name //删除变量
flush_all //清空所有
PHP+Memcached
因为php无法直接操作memcached拓展
yum -y install php-pecl-memcache
vim /etc/php-fpm.d/www.conf
找到以下两行并更改
php_value[session.save_handler] = memcache
php_value[session.save_path] = tcp://192.168.2.5:11211
systemctl restart php-fpm.service
课外练习
给用户提权限
在该文件中使用root用户权限修改/etc/sudoers
总结语法:用户 主机名=(提权的用户) NOPASSWD: 命令
授权什么人,在什么主机,以什么人的身份,执行什么命令