nginx介绍 -下载安装以及如何实现http服务

简介

  • Nginx (engine x) 是一个高性能的HTTP和反向代理WEB服务器。同时也提供了IMAP/POP3/SMTP服务。具有响应快、高扩展(丰富的第三方模块支持)、高可靠、低内存消耗、高并发、热部署等优势。

安装

  • 安装Nginx之前需要先安装以下三个依赖包:
    • OpenSSL : 数据加密
      • 解压后进入目录依次执行以下命令

        ./config
        sudo make
        sudo make install

    • PCRE : 解析正则表达式
      • 解压后进入目录依次执行以下命令

        ./configure
        sudo make
        sudo make install

    • ZLib : 压缩和解压缩
      • 解压后进入目录依次执行以下命令

        ./configure
        sudo make
        sudo make install

  • Nginx
    • 解压后进入目录依次执行以下命令

      ./configure
      make
      make install

目录介绍

  • Nginx会默认安装到/usr/local/nginx目录下
    • conf :主要存放nginx的配置文件(nginx.conf)
    • sbin :存放nginx程序
    • html :存放网页资源
    • logs :日志目录

Nginx操作指令

  • 启动

    sudo ./nginx

  • 停止

    马上终止web服务器 : sudo ./nginx -s stop
    等待当前操作处理完成之后再停止 : sudo ./nginx -s quit

  • 重新加载

    sudo ./nginx -s reload

Nginx配置文件介绍

  • 路径:/usr/local/nginx/conf/nginx.conf
  • 配置文件结构
    •   -main
          |--http
          |    |--server
          |          |--location
          |--mail
      
      • main:代表整个配置文件
      • http:处理web请求
      • server:代表一个web服务器
      • location:web服务器要处理的一个指令
      • mail:处理邮件相关协议
  • 配置文件介绍(截取了一部分)
  •  #user  nobody;
     # 工作进程
     worker_processes  1;
    
     #error_log  logs/error.log;
     #error_log  logs/error.log  notice;
     #error_log  logs/error.log  info;
    
     #pid        logs/nginx.pid;
    
    
     events {
     	# 可以连接到worker的数量
     	worker_connections  1024;
     }
    
    
     http {
     	include       mime.types;
     	default_type  application/octet-stream;
     	
     	sendfile        on;
     	#tcp_nopush     on;
    
     	#keepalive_timeout  0;
     	# 保持连接超时
     	keepalive_timeout  65;
    
     	#gzip  on;
    
     	server {
         	listen       80;                  # 监听端口
         	server_name  localhost;   # 域名,对应本地ip
    
     		# / 代表资源根目录 
         	location / {
         		# html目录,在/usr/local/nginx下。
         		# 你在浏览器输入http://ip:port
         		# Nginx会去/usr/local/nginx下找html目录,并加载html目录对应的index.html文件
             	root   html;  
             	index  index.html index.htm; 
         	}
     	}
    
     	# HTTPS server
     	#
     	#server {
     	#    listen       443 ssl;
    	 	#    server_name  localhost;
    
     	#    ssl_certificate      cert.pem;
     	#    ssl_certificate_key  cert.key;
    
     	#    ssl_session_cache    shared:SSL:1m;
     	#    ssl_session_timeout  5m;
    
     	#    ssl_ciphers  HIGH:!aNULL:!MD5;
     	#    ssl_prefer_server_ciphers  on;
    
     	#    location / {
     	#        root   html;
     	#        index  index.html index.htm;
     	#    }
    	 	#}
    
     }
    

Nginx实现http服务

  • 我们直接使用Nginx默认配置,启动Nginx服务。然后在浏览器中输入本地ip和端口,就可以访问到Nginx,Nginx就实现了一个简单的http服务。
    在这里插入图片描述
    在这里插入图片描述
  • 看到这个页面,就说明访问成功了。
  • 如果要访问自己实现的html页面,直接替换/usr/local/nginx/html下面的index.html文件,并把你的依赖文件和资源文件一起拷贝到该目录下,就可以通过Nginx实现自己的http服务。

Nginx处理多个指令

  • Nginx可以处理多个不同的指令
  • 在原有配置文件基础上,再新增一个location,在/usr/local/nginx目录下创建一个新目录 html.csdn,拷贝一份index.html文件,做简单修改。放到该目录下。
  •   location /csdn {
      		# html.csdn目录,在/usr/local/nginx下
      		# 在浏览器输入http://ip:port/csdn 
      		# Nginx 会去/usr/local/nginx目录下查找html.csdn目录,并加载index.html文件
      		alias   html.csdn; 
             	index  index.html index.htm; # html目录下的文件
      }
    
  • 我们先直接访问 http://127.0.0.1:80
    在这里插入图片描述
  • 再访问 http://127.0.0.1:80/csdn, 加载的就是另一个界面了。
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/new9232/article/details/129224262