1、安装最新版phpstudy集成工具并创建一个网站,编写php代码输出网站信息(phpinfo)
1.在桌面创建一个web的文件夹,修改小皮根目录为web源码存放的目录
2.在vscode中编写php代码输出网站信息(phpinfo)
2、安装vscode,并安装php开发插件、汉化插件、xdebug等插件
1.汉化插件(安装完成之后,重启vscode即可生效)
2.php调试插件
安装下列插件
配置Open PHP/HTML/JS In Browser插件(第二个设置为调试网站根路径)
3.Xdebug插件
3、配置phpstudy集成工具xdebug扩展,并使用vscode对php代码进行调试。
使用phpstudy配置xdebug插件,会有⼀点点bug,需要⼿动修改php.ini,加⼊下面配置项并重启apache
修改php.ini文件(【设置】> 【配置文件】> 选择对应的php版本)
Xdebug v2.x.x:
[Xdebug]
..............
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
Xdebug v3.x.x:
zend_extension = xdebug
xdebug.mode=debug,develop
xdebug.start_with_request=yes
-
配置完成
超时配置
后续将使⽤phpstudy进行php代码审计,为了防止出现超时问题,可以提前设置好相关参数,在下面文件末尾加上相关参数
D:\phpstudy_pro\Extensions\Apache2.4.39\conf\httpd.conf
KeepAliveTimeout 50000
MaxKeepAliveRequests 100000
Timeout 600000
FcgidIOTimeout 36000
FcgidIdleTimeout 36000
IPCConnectTimeout 36000
IPCCommTimeout 36000
在软件管理->对应php版本->PHP设置 修改执行超时时间
4、编写php代码实现文件上传功能
创建文件上传表单(form.html)
创建上传脚本(upload_file.php)
访问form.html进行文件上传
上传成功
5、请概述cookie和session的区别和联系
区别:
| 特性 | Cookie | Session |
|---|---|---|
| 存储位置 | 客户端 (浏览器) | 服务器端 (内存、文件、数据库) |
| 数据类型 | 文本 (键值对) | 可以是任意对象 (取决于服务器语言) |
| 数据内容 | 直接存储数据本身 (可能编码/加密) | 存储用户状态数据,客户端只存储 Session ID |
| 存储大小 | 很小 (约 4KB / 域名,数量有限) | 较大 (理论上只受服务器限制) |
| 安全性 | 较低 (用户可见/可修改,需安全属性保护) | 较高 (敏感数据在服务器,仅 ID 在客户端传输) |
| 生命周期 | 可设置 (会话级或持久性过期时间) | 通常会话级 (浏览器关闭或超时失效) |
| 资源开销 | 客户端承担存储 | 服务器承担存储和管理开销 |
| 传输方式 | 通过 HTTP 头 (Cookie, Set-Cookie) | Session ID 通过 Cookie 或 URL 传递,数据在服务器 |
| 主要目的 | 客户端存储少量非敏感信息/传递 Session ID | 服务器端存储用户会话状态 |
联系:
- 服务端通过
Set-Cookie将Session ID发送到客户端,后续请求中浏览器通过Cookie自动携带该ID,服务端据此识别用户。 - 都是为了解决 HTTP 协议无状态的问题,实现跨请求的用户状态跟踪和个性化体验。