项目简介
本项目是一个简易的Web注册系统,专为美国南加州大学(USC)计算机系的网络编程课程设计。通过Socket编程在Linux系统上实现,具备用户登录认证和课程信息查询功能。采用多服务器架构,有主服务器、认证服务器和两个课程信息查询服务器(分别负责计算机系和电子系课程信息),客户端通过控制台与服务器交互实现登录和查询操作。
项目的主要特性和功能
- 多服务器架构:包含主服务器、认证服务器和两个课程信息查询服务器。
- 用户认证:客户端输入用户名和密码进行登录认证。
- 课程信息查询:可查询计算机系和电子系的课程信息。
- 反向代理:主服务器作为反向代理,按请求类型将客户端请求转发到相应后端服务器。
- TCP短链接:客户端每次交互仅向服务器发一个请求,服务器处理后返回结果。
安装使用步骤
安装步骤
- 下载源码:从项目仓库下载源码文件。
- 编译服务器程序:进入项目目录,用C或C++编译器编译服务器程序(
serverM
、serverC
、serverCS
、serverEE
),如使用gcc
编译C语言版本:bash gcc -o serverM serverM.c gcc -o serverC serverC.c gcc -o serverCS serverCS.c gcc -o serverEE serverEE.c
- 编译客户端程序:用C或C++编译器编译客户端程序(
client
),如使用gcc
编译C语言版本:bash gcc -o client client.c
使用方法
- 启动服务器:在终端依次启动主服务器和各后端服务器:
bash ./serverM ./serverC ./serverCS ./serverEE
- 启动客户端:在另一个终端启动客户端程序:
bash ./client
- 进行交互:客户端启动后,按提示输入用户名和密码进行登录认证,认证通过后,输入要查询的课程代码,客户端发送查询请求并显示结果。
注意事项
- 确保所有服务器程序正确启动并监听指定端口。
- 输入正确的用户名和密码进行认证。
- 查询课程代码时,确保输入的课程代码存在且正确。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】