使用Nginx创建一个简易web网站

使用环境:Ubuntu18.04 server

Nginx的安装

1.输入命令sudo apt install nginx安装nginx

创建nginx密码网站 nginx建立网站_客户端

2.查看nginx的版本nginx -v

创建nginx密码网站 nginx建立网站_创建nginx密码网站_02

3.启动nginx的服务service nginx start 4.查看本地ip地址ifconfig

创建nginx密码网站 nginx建立网站_客户端_03

5.在浏览器中输入ip地址

创建nginx密码网站 nginx建立网站_System_04

网站文件的创建

1.编写html文件

sudo nano index.html

创建nginx密码网站 nginx建立网站_System_05

2.将index.html和tiger.jpg移动到nginx的默认目录下

mv index.html /var/www/html
mv tiger.jpg /var/www/html

3.网页结果

创建nginx密码网站 nginx建立网站_创建nginx密码网站_06

C#制作一个简易的基于HTTP协议浏览器客户端软件

HTTP协议工作原理

HTTP协议定义Web客户端如何从Web服务器请求Web页面,以及服务器如何把Web页面传送给客户端。HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求报文,请求报文包含请求的方法、URL、协议版本、请求头部和请求数据。服务器以一个状态行作为响应,响应的内容包括协议的版本、成功或者错误代码、服务器信息、响应头部和响应数据。
以下是 HTTP 请求/响应的步骤:

  1. 客户端连接到Web服务器
    一个HTTP客户端,通常是浏览器,与Web服务器的HTTP端口(默认为80)建立一个TCP套接字连接。例如,http://www.luffycity.com。
  2. 发送HTTP请求
    通过TCP套接字,客户端向Web服务器发送一个文本的请求报文,一个请求报文由请求行、请求头部、空行和请求数据4部分组成。
  3. 服务器接受请求并返回HTTP响应
    Web服务器解析请求,定位请求资源。服务器将资源复本写到TCP套接字,由客户端读取。一个响应由状态行、响应头部、空行和响应数据4部分组成。
  4. 释放连接TCP连接
    若connection 模式为close,则服务器主动关闭TCP连接,客户端被动关闭连接,释放TCP连接;若connection 模式为keepalive,则该连接会保持一段时间,在该时间内可以继续接收请求;
  5. 客户端浏览器解析HTML内容
    客户端浏览器首先解析状态行,查看表明请求是否成功的状态代码。然后解析每一个响应头,响应头告知以下为若干字节的HTML文档和文档的字符集。客户端浏览器读取响应数据HTML,根据HTML的语法对其进行格式化,并在浏览器窗口中显示。

简易浏览器的实作过程

环境 Visual Studio 2017 社区版

1.创建项目:文件–>新建–>项目

创建nginx密码网站 nginx建立网站_System_07

2.设计界面,主要用到三个控件:所有Windows窗体下的Button(按钮)、TextBox(编辑框)、WebBrowser(网页浏览器框)

创建nginx密码网站 nginx建立网站_服务器_08

3.添加代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WebBrowser
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            String web = textBox1.Text;//获取textBox1的http地址
            HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(web);//向网页发出请求
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();//网页作出应答
            Stream stream = response.GetResponseStream();//得到网页的应答流
            StreamReader reader = new StreamReader(stream);//流的初始化
            string content = reader.ReadToEnd();//读取流的所有字符到结束
            webBrowser1.DocumentText = content;//设置显示在WebBrower控件中的内容
        }
    }
}

4.运行程序结果:在下面的编辑框中输入网址,点击按钮进入网页了

创建nginx密码网站 nginx建立网站_创建nginx密码网站_09