当前位置: 首页 > news >正文

江苏景禾瑜博建设工程有限公司网站学做网站论坛 可以吗

江苏景禾瑜博建设工程有限公司网站,学做网站论坛 可以吗,网站建设中模板 模板无忧,想创建一个网站实验目的 1. 处理一个 http 请求 2. 接收并解析 http 请求 3. 从服务器文件系统中获得被请求的文件 4. 创建一个包括被请求的文件的 http 响应信息 5. 直接发送该信息到客户端 具体内容 一、C 程序来实现 web 服务器功能。 二、用 HTML 语言编写两个 HTML文件#xff0c;并…实验目的 1. 处理一个 http 请求 2. 接收并解析 http 请求 3. 从服务器文件系统中获得被请求的文件 4. 创建一个包括被请求的文件的 http 响应信息 5. 直接发送该信息到客户端 具体内容 一、C 程序来实现 web 服务器功能。 二、用 HTML 语言编写两个 HTML文件并制作两个网页来验证 web 服务器能否成功运行。 三、验证处理http请求和应对错误请求显示错误信息两种情况。 实验过程 用HTML 语言编写制作三个简易网页1. 主页包括欢迎信息和一个跳转链接2. 跳转页包含一个图片和提示信息3. 404错误处理页当跳转到无法访问的地址时就来到这个页面。 编写C代码使用Boost.Asio库用来处理 TCP 连接和数据的读写。 使用Boost.Filesystem获取文件的扩展名和检查文件是否存在。监听8888端口的访问以及实现一些获取返回信息和跳转页面的逻辑。然后编译链接运行 ​​​​​​​Linux运行在虚拟机环境中先通过ifconfig获取局域网内的IP192.168.146.138然后在物理机上运行浏览器在地址栏中输入192.168.146.138:8888进入主页依次测试跳转和输入错误地址的情况。 关键代码讲解 主要处理逻辑代码首先它读取请求行方法、路径和协议然后根据路径找到相应的文件。如果文件不存在它会返回一个 404 错误页面如果文件存在它会返回文件的内容。主函数中只需创建了一个 TCP 接受器然后进入一个无限循环接受新的连接并处理请求。 void handle_request(tcp::socket socket) {try {boost::asio::streambuf request;boost::asio::read_until(socket, request, \r\n);std::string method, path, protocol;std::istream request_stream(request);request_stream method path protocol;if (path /) {path /index.html;}std::string full_path root_dir path;std::ifstream file(full_path, std::ios::binary);boost::asio::streambuf response;std::ostream response_stream(response);if (!file) {// Open the 404.html filestd::ifstream file_404(root_dir /404.html, std::ios::binary);if (!file_404) {response_stream HTTP/1.0 500 Internal Server Error\r\n;response_stream Connection: close\r\n\r\n;std::cout Response: 500 Internal Server Error std::endl;} else {response_stream HTTP/1.0 404 Not Found\r\n;response_stream Content-Type: text/html\r\n;response_stream Connection: close\r\n\r\n;response_stream file_404.rdbuf();std::cout Response: 404 Not Found std::endl;}} else {response_stream HTTP/1.0 200 OK\r\n;response_stream Content-Type: get_content_type(full_path) \r\n;response_stream Connection: close\r\n\r\n;response_stream file.rdbuf();std::cout Response: 200 OK, Content-Type: get_content_type(full_path) std::endl;}boost::asio::write(socket, response);socket.shutdown(tcp::socket::shutdown_both);} catch (boost::system::system_error e) {if (e.code() ! boost::asio::error::eof) {throw; // Rethrow if its not the expected exception.}// Handle EOF exception here if necessary.std::cout Connection closed by client. std::endl;} } 运行示例 1当输入IP:8888实现访问主页。 2当点击“Next Page”会转到下一个界面展示预设好的内容。 3当输入一个错误的网址时例如aaa.html将会显示404界面。 相关代码 BJTU_CS_Learning/computernetwork at main · JJLi0427/BJTU_CS_Learning (github.com)
http://www.w-s-a.com/news/272898/

相关文章:

  • 网站群建设费用科技通信网站模板下载
  • 网站开发的流程是怎样的自己做自媒体在哪个网站比较好
  • 网站的html代码在哪网页线上开发制作
  • 免费商用自媒体图片网站做网站好的公司有哪些
  • 阿雷网站建设公司中国建筑考试网官网首页
  • 厦门网站制作网页无法跳转到建设银行网站
  • 怎么建设自己网站简述网页布局的几种方法
  • 软文营销文案100篇如何优化搜索引擎的搜索功能
  • 做网站创意杭州家具网站建设方案
  • 福州seo网站推广优化乐清建网站
  • 莆田cms建站模板简述网站设计流程
  • 班级网站建设组织机构建设注册中心网站首页
  • 即墨网站建设地址怎么在文档中做网站一点就开
  • 做网站联系方式互联网行业分析
  • 杭州网站建设索q479185700高淳网站建设
  • 有什么做任务拿钱的网站精准的搜索引擎优化
  • 洛阳有建社网站的吗电力建设工程质量监督总网站
  • 网站404报错热水器网站建设 中企动力
  • 网站降权恢复淘宝 网站建设
  • 安州区建设局网站台州优秀关键词优化
  • 网站假设教程湖南微信管理系统
  • 网站备案属于公司哪一块哪个网站是专门做封面素材
  • 广州个人做网站内江建设局网站
  • 网站开发 360百科大连哪里有手机自适应网站建设维护
  • 如何查网站pv网站功防教程
  • 建设银行网站信息补充营销推广的作用
  • 网站见建设seo外链自动群发工具
  • 在境外做网站网站团购网站seo
  • 进网站后台加什么360推广 网站建设
  • 网站备案号码专做网站漏扫的工具