Laravel学习-01预备阶段-03 Web基础
在上一篇《Laravel学习-01预备阶段-02 Composer》中,我们了解了 PHP 项目的依赖管理工具。本篇是预备阶段的最后一块拼图:Web 开发基础知识。这些内容不涉及 Laravel 本身,而是你学习任何 Web 框架前都应掌握的通用概念。
理解这些基础,能让你在后续接触 Laravel 路由、控制器、表单处理等内容时,知其然也知其所以然。
1. Web 是如何工作的?
简单来说,Web 通信基于 客户端-服务器模型:
- 用户在浏览器(客户端)输入网址或点击链接;
- 浏览器向 服务器 发送一个 HTTP 请求;
- 服务器收到请求后,处理逻辑(如读取数据库、计算数据);
- 服务器返回一个 HTTP 响应(通常是 HTML 页面);
- 浏览器接收响应并 渲染页面 给用户。
这个“请求 → 处理 → 响应”的过程,是所有 Web 应用的核心流程。
2. 什么是 HTTP?
HTTP(HyperText Transfer Protocol) 是浏览器与服务器之间通信的协议。
- 它是无状态的:每次请求都是独立的,服务器默认不会记住你上次做了什么。
- 它基于文本:请求和响应都是可读的文本格式(虽然实际传输是二进制)。
- 它有方法(Method):标明你想做什么操作。
常见 HTTP 方法
| 方法 | 含义 | 示例场景 |
|---|---|---|
GET | 获取资源 | 打开网页、查看文章 |
POST | 提交数据 | 用户注册、发表评论 |
PUT / PATCH | 更新资源 | 编辑个人资料 |
DELETE | 删除资源 | 删除一条消息 |
对初学者来说,先重点理解
GET和POST即可。
3. URL 是什么?
URL(统一资源定位符) 就是我们在浏览器地址栏看到的网址,例如:
https://example.com/users/123?tab=profile
它由几部分组成:
- 协议:
https://(还有http://) - 域名:
example.com - 路径:
/users/123(表示要访问的资源) - 查询参数:
?tab=profile(可选,用于传递额外信息)
在 Web 开发中,不同的 URL 通常对应不同的功能页面。
4. 表单(Form)与用户输入
用户如何向网站提交数据?最常见的方式是 HTML 表单:
<form action="/login" method="POST">
<input type="text" name="email" placeholder="邮箱">
<input type="password" name="password" placeholder="密码">
<button type="submit">登录</button>
</form>
action:数据提交到哪个 URLmethod:使用哪种 HTTP 方法(通常是POST)name:字段的名称,服务器通过它识别数据
服务器收到表单数据后,才能进行登录验证、保存信息等操作。
5. 前端三件套:HTML、CSS、JavaScript
虽然 Laravel 是后端框架,但你仍需了解前端的基本组成:
- HTML:定义网页的结构和内容(如标题、段落、表单)。
- CSS:控制网页的样式和布局(如颜色、字体、间距)。
- JavaScript:实现交互行为(如点击按钮弹出提示、动态加载数据)。
一个完整的 Web 应用 = 后端(处理逻辑 + 数据) + 前端(展示 + 交互)。
6. Cookie 与 Session(保持状态)
由于 HTTP 是无状态的,服务器无法直接知道“你是谁”。为了解决这个问题,Web 引入了:
- Cookie:浏览器保存的小段数据,每次请求自动发送给服务器。
- Session:服务器为每个用户创建一个“会话”,用 Cookie 中的 ID 来识别。
典型用途:
- 登录后记住用户身份
- 购物车中保存商品
- 显示“上次访问时间”
你不需要现在就深入实现细节,但要理解“为什么需要它们”。
7. 静态网站 vs 动态网站
- 静态网站:页面内容是固定的 HTML 文件,所有人看到的都一样(如个人博客首页)。
- 动态网站:页面内容由服务器实时生成,根据用户、时间、数据库数据等变化(如微信朋友圈、淘宝商品页)。
Laravel 用于构建动态网站 —— 它根据请求动态生成 HTML 或返回 JSON 数据(用于前后端分离)。
小结
本篇介绍了 Web 开发的通用基础知识,包括:
- HTTP 请求与响应
- URL、表单、前端三件套
- Cookie/Session 的作用
- 静态 vs 动态网站的区别
这些概念不依赖任何框架,是所有 Web 开发者的共同语言。掌握它们,你就为学习 Laravel 打下了坚实基础。
系列预告:
《Laravel学习-01预备阶段-04 数据库基础》