安装和配置nginx(含https)

这篇具有很好参考价值的文章主要介绍了安装和配置nginx(含https)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

安装Nginx

sudo yum update
sudo yum install epel-release
sudo yum install nginx
sudo systemctl start nginx

安装好后可以打开自己的域名 看一下默认的页面

配置

具体参考Link
位置

/etc/nginx/nginx.conf

nginx默认文件的结构:

...              #全局块

events {         #events块
   ...
}

http      #http块
{
    ...   #http全局块
    server        #server块
    { 
        ...       #server全局块
        location [PATTERN]   #location块  #请求的url过滤,正则匹配,~为区分大小写,~*为不区分大小写。
        {
           #root path;  #根目录
           #index vv.txt;  #设置默认页
           proxy_pass  http://mysvr;  #请求转向mysvr 定义的服务器列表
           deny 127.0.0.1;  #拒绝的ip
           allow 172.18.5.54; #允许的ip  
        }
        location [PATTERN] 
        {
            ...
        }
    }
    server
    {
      ...
    }
    ...     #http全局块
}

1、全局块:配置影响nginx全局的指令。一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,允许生成worker process数等。
2、events块:配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。
3、http块:可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。
4、server块:配置虚拟主机的相关参数,一个http中可以有多个server。
5、location块:配置请求的路由,以及各种页面的处理情况。

默认监听的是80端口
单独服务的配置可以写新的文件
比如,把配置文件拆分开来,在/etc/nginx/conf.d/ 文件建立对应的域名配置文件,比如 /etc/nginx/conf.d/123.com.conf
然后在这个nginx.conf中进行引用
在原来文件/etc/nginx/nginx.conf 的http 块下加一句话就可以了:

include /etc/nginx/conf.d/*.conf;

安装和配置nginx(含https),后端,并发,nginx,https,运维

单独的配置:

server {
    listen       8080; # 监听的端口
    server_name #你的域名 可以有多个;

    location / {
        proxy_pass http://127.0.0.1:9028;  # 转发的地址 比如这是我网站VUE前端的地址
        root   /home/daily_5_web/前端项目地址;  #根目录
        index  index.html index.htm; #设置默认页
    }

配置好后重启

sudo nginx -t
If there are no errors, restart Nginx with:
sudo systemctl restart nginx

现在就可以通过你配置的域名:8080来访问到我的前端界面了
xxx.cn:8080

https配置

需要监听443
需要已经准备好SSL证书(有免费的,可以申请,申请后得到文件,证书一般是pem文件和key文件
将下载好的证书上上传到服务器
比如腾讯云的可以参考这个连接

server {
     #SSL 默认访问端口号为 443
     listen 443 ssl; 
     #请填写绑定证书的域名
     server_name 域名 ; 
     #请填写证书文件的相对路径或绝对路径
     ssl_certificate /etc/nginx/xxx/xxx.crt; 
     #请填写私钥文件的相对路径或绝对路径
     ssl_certificate_key  /etc/nginx/xxx.key; 
     ssl_session_timeout 5m;
     #请按照以下协议配置
     ssl_protocols TLSv1.2 TLSv1.3; 
     #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
     ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; 
     ssl_prefer_server_ciphers on;
     location / {
         #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
         #例如,您的网站主页在 Nginx 服务器的 /etc/www 目录下,则请修改 root 后面的 html 为 /etc/www。
         proxy_pass http://127.0.0.1:5000; # 这是我后端的地址和端口号
         root   /home/xxx/backend; # 后端服务根目录
     }
     # 静态文件配置
location /fonts/SourceHanSansCN.ttf {
        add_header Access-Control-Allow-Origin *;
        alias /home/daily_5_web/backend/project/services/SourceHanSansCN-Medium.ttf;
        expires 1h;
    }
 }

修改完同样重启Nginx
用https+域名来访问网站 看是否成功
比如:
https://你的域名.cn/xcx/接口

nginx为什么可以处理高并发

Nginx实现支持并发请求的关键在于其事件驱动的架构和高效的处理机制。下面以一个用户访问网站的例子来解释Nginx如何支持并发请求:

用户发起HTTP请求:假设一个用户在浏览器中输入网站的URL并按下回车,发送HTTP请求到服务器。

Nginx接收请求:Nginx作为前端服务器监听在特定端口上,接收到用户的HTTP请求。

并发连接处理:Nginx使用事件驱动的架构,采用异步非阻塞的方式处理并发连接。它通过使用多个工作进程或线程来处理多个连接,每个连接都是一个独立的事件。

请求路由:Nginx根据预先配置的路由规则,将接收到的请求路由到适当的后端服务器。这可以是本地的Gunicorn服务器或其他远程服务器。

反向代理:作为反向代理服务器,Nginx可以在后端服务器和客户端之间进行代理。它将用户的请求转发到后端服务器,并将响应返回给用户,实现了负载均衡和高可用性。

静态文件服务:如果请求的是静态文件(如HTML、CSS、JavaScript、图像等),Nginx可以直接提供这些文件,而无需将请求转发到后端服务器。它可以通过配置缓存和文件压缩来提高静态文件的传输效率。

并发请求处理:Nginx的事件驱动机制允许同时处理多个请求。它使用高效的I/O多路复用技术(如epoll、kqueue等)来监听多个连接的状态,并在连接有数据可读或可写时触发相应的事件。

高性能处理:Nginx使用事件驱动和非阻塞I/O模型,在处理请求时能够高效利用服务器资源。它避免了每个连接都创建一个新的线程或进程的开销,相比传统的多线程或多进程模型,更节省资源并提供更高的并发能力。

通过上述过程,Nginx能够有效地支持并发请求。它的事件驱动架构和非阻塞I/O机制使得它能够处理大量的并发连接,同时提供高性能和可靠性的服务。无论是静态文件服务还是反向代理转发,Nginx都能够有效地处理用户的请求,并将响应迅速返回给用户,实现快速的网站访问体验。文章来源地址https://www.toymoban.com/news/detail-584264.html

到了这里,关于安装和配置nginx(含https)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Mac Docker安装配置nginx,配置代理前端访问服务器后端访问本地启动项目

     或者直接通过docker客户端查看 --name NginxTest:容器名称 -p 8080:8080:映射端口 -d nginx:设置容器后台运行  docker客户端查看 1)全局块:配置服务器整体运行的配置指令 nginx 服务器整体运行的配置指令,主要包括配置运行 Nginx 服务器的用户(组)、允许生成的 worker process 数,

    2024年02月02日
    浏览(52)
  • yum安装nginx、源码安装、nginx开机自启、配置多域名与重定向、反向代理、配置IPv6、获取证书与配置证书https

    可以使用yum直接安装nginx:yum -y install nginx,如果安装报错,可以换个yum源试试 源码安装提供更大的灵活性,但需要更多的手动管理,而Yum安装则更方便 yum源镜像站,阿里云的推荐:https://developer.aliyun.com/mirror/ 常用的镜像:epel和centos,根据提示命令直接安装即可 然后执行:

    2024年02月20日
    浏览(49)
  • Nginx proxy_pass到https后端

    目录 生成证书(自签名证书需要) 配置NGINX 官网链接 使用SSL/TLS加密,确保NGINX或NGINX Plus与上游服务器之间的HTTP流量安全。 本文解释了如何加密NGINX和上游组或代理服务器之间的HTTP流量。      1. 生成自签名CA证书。 生成客户端证书和密钥。 生成服务器证书和密钥。 官网

    2024年02月06日
    浏览(35)
  • Linux升级openssl版本、安装nginx并配置https证书支持TLSv1.3

    参考文章 https://blog.csdn.net/weixin_43153854/article/details/109823633?utm_medium=distribute.pc_relevant.none-task-blog-2 default baidujs_baidulandingword~default-4-109823633-blog-106643510.pc_relevant_default_base2spm=1001.2101.3001.4242.3utm_relevant_index=7 参考文章 https://blog.csdn.net/t8116189520/article/details/81909574

    2024年02月14日
    浏览(32)
  • 【密码学】使用mkcert安装CA、自签名ssl证书,配置nginx的https 证书笔记

    CA(Certificate Authority,证书授权)是由认证机构服务者签发,是数字签名的技术基础保障,也是网上实体身份的证明,能够证明某一实体的身份及其公钥的合法性,证明该实体与公钥二者之间的匹配关系。 在电子商务系统中,所有实体的证书都是由证书授权中心即CA中心颁发并签

    2024年02月03日
    浏览(40)
  • 【运维安全】运维界葵花宝典:Nginx配置与优化秘籍

    必要的原理介绍 ● Nginx 里有一个master进程和多个worker进程.master进程并不处理网络请求,主要负责调度工作进程: 加载配置,启动工作进程及非停升级.worker进程负责处理网络请求与响应. ● master进程主要用来管理worker进程,具体包括如下4个主要功能: 接收来自外界的信号 向各wo

    2024年02月21日
    浏览(35)
  • nginx配置内网代理,前端+后端分开配置

    我这块安装在了home里面,各位根据自身情况选择 打开nginx.conf文件 在底部查看是否包含这段信息:含义是配置文件包含该路径下的配置文件 include /home/nginx/conf/conf.d/*.conf; # 该路径根据自己的安装位置自行修改 进入conf.d文件夹,创建配置文件,文件名符合规范,后缀一定要是

    2024年01月21日
    浏览(41)
  • nginx配置https访问

    为什么需要使用HTTPS,因为HTTP不安全,当使用http进行消息传输时,可能会遭到黑客的劫持和篡改,如果采用https协议,那么数据在传输过程中是加密的,所以黑客无法窃取或者篡改数据报文信息,同时也避免网站传输时信息泄露。 实现https:需要使用ssl协议。 首先需要申请证

    2024年01月22日
    浏览(30)
  • Nginx【https配置】

    为什么要使用https 1、因为http采用的时明文传输,敏感数据(账号、密码、交易信息)不安全。容易遭到篡改 2、https采用的是超文本传输协议,数据在传输时会加密,能够避免信息泄露 TLS和SSL是如何将数据加密的(他们运行在应用层和传输层之间) 1、提供数据安全(不被泄

    2024年02月11日
    浏览(33)
  • nginx配置https证书

    甲方发来的nginx证书解压后有一个 key类型及pem类型的文件 修改的代码就圈中的几句, ssl_protocols SSLv3 TLSv1; # SSL协议 这个注释掉了,否则谷歌高版本浏览器 可能提示 ERR_SSL_VERSION_OR_CIPHER_MISMATCH 报错信息

    2024年02月08日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包