网站首页 > 技术教程 正文
Nginx(发音为“Nginx”)是一种高性能的Web服务器。它最初是为解决10K问题而开发的,这意味着可以提供10,000个并发连接。Nginx可以用作独立的Web服务器,也可以作为反向代理服务于其他Web服务器之前。
当作为反向代理服务器时,Nginx充当前端Web服务器,将传入的请求传递到后端的Web服务器,不同的端口等。然后Nginx可以处理SSL / HTTPS,GZip,缓存头,负载平衡等方面还有很多其他的东西。后面的Web服务器不需要知道如何处理它。并且 - 您只有一个Web服务器,您需要了解如何配置SSL / HTTPS,GZip等 - 这就是Nginx。我们在tomcat面前使用Nginx。Nginx处理所有SSL / HTTPS内容,而tomcat只支持背面的普通HTTP请求。
Installing Nginx
可以使用apt-get包管理器在Ubuntu上安装Nginx,如下所示:
apt-get install nginx
这应该在你的Ubuntu服务器上安装最新版本的Nginx。
要在其他Linux发行版上安装Nginx,请在Google,Bing等上搜索。您可以轻松找到在所需Linux发行版上安装Nginx所需的命令行。
Starting Nginx
安装Nginx后,您需要启动它。您可以使用此命令执行此操作:
/etc/init.d/nginx start
要验证Nginx是否正在运行,请尝试将浏览器定向到Ubuntu服务器的IP地址(或域名)。确保已在端口80上打开防火墙。
检查Nginx是否正在运行
检查Nginx是否正在运行的另一种方法是运行此命令:
htop
在命令的输出中,在列表中查找“nginx master process”和“nginx worker process”。如果您在列表中看到这些进程,则Nginx正在运行。
Restarting Nginx
每当您更改Nginx配置文件时,都需要重新启动Nginx。使用以下命令重新启动Nginx。
/etc/init.d/nginx restart
一个Nginx重新启动,新配置将生效。
如果配置文件中有错误,则重新启动Nginx将失败。
restart命令会在它输出的行的末尾写一个小的“OK”或“Fail”,让你知道重启失败还是成功。如果您有错误,请更正错误,然后重新启动Nginx。然后它应该再次工作。
Nginx 配置文件
Nginx主配置文件位于:
/etc/nginx/nginx.conf
Nginx配置文件可能包含其他配置文件。因此,您可以将配置划分为多个较小的可重用配置文件,这些文件都包含在主Nginx配置文件中。
要配置Nginx,我们必须更改Nginx配置文件。在对其进行更改之前,请备份原始配置文件。这样你就可以随时回到原版,以防你弄乱副本。以下是如何制作原始Nginx配置文件的副本:
cp /etc/nginx/nginx.conf /etc/nginx.conf.orig
文件/etc/nginx.conf.orig现在包含原始Nginx配置文件的副本。
配置文件
这是我原来的Nginx配置文件的样子。在任何地方你都看到了[\ n],这意味着我已经插入了与原版相比的换行符,以便更容易在浏览器中查看文件。#是备注。
user www-data; worker_processes 4; pid /run/nginx.pid; events { worker_connections 768; # multi_accept on; } http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # server_tokens off; # server_names_hash_bucket_size 64; # server_name_in_redirect off; include /etc/nginx/mime.types; default_type application/octet-stream; ## # Logging Settings ## access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; ## # Gzip Settings ## gzip on; gzip_disable "msie6"; # gzip_vary on; # gzip_proxied any; # gzip_comp_level 6; # gzip_buffers 16 8k; # gzip_http_version 1.1; # gzip_types text/plain text/css application/json [\n] application/x-javascript text/xml [\n] application/xml application/xml+rss text/javascript; ## # nginx-naxsi config ## # Uncomment it if you installed nginx-naxsi ## #include /etc/nginx/naxsi_core.rules; ## # nginx-passenger config ## # Uncomment it if you installed nginx-passenger ## #passenger_root /usr; #passenger_ruby /usr/bin/ruby; ## # Virtual Host Configs ## include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; } #mail { # # See sample authentication script at: # # http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript # # # auth_http localhost/auth.php; # # pop3_capabilities "TOP" "USER"; # # imap_capabilities "IMAP4rev1" "UIDPLUS"; # # server { # listen localhost:110; # protocol pop3; # proxy on; # } # # server { # listen localhost:143; # protocol imap; # proxy on; # } #}
配置Nginx
配置Nginx是通过配置文件完成的。究竟要配置什么取决于你想要Nginx做什么。
使用SSL / HTTPS将Nginx配置为反向代理
下面是一个示例nginx.conf(Nginx配置文件),它向您展示如何将Nginx配置为反向代理。同样,[\ n]标记我插入换行符的位置,以便在浏览器中更容易查看文件。删除您自己的此文件版本中的[\ n]和换行符。在文件列表之后,有关配置的更多详细信息。
user www-data; worker_processes 4; pid /run/nginx.pid; events { worker_connections 768; # multi_accept on; } http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # server_tokens off; # server_names_hash_bucket_size 64; # server_name_in_redirect off; include /etc/nginx/mime.types; default_type application/octet-stream; ## # Logging Settings ## access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; ## # Gzip Settings ## gzip on; gzip_disable "msie6"; # gzip_vary on; # gzip_proxied any; # gzip_comp_level 6; # gzip_buffers 16 8k; # gzip_http_version 1.1; # gzip_types text/plain text/css application/json [\n] application/x-javascript text/xml application/xml [\n] application/xml+rss text/javascript; ## # nginx-naxsi config ## # Uncomment it if you installed nginx-naxsi ## #include /etc/nginx/naxsi_core.rules; ## # nginx-passenger config ## # Uncomment it if you installed nginx-passenger ## #passenger_root /usr; #passenger_ruby /usr/bin/ruby; ## # Virtual Host Configs ## server { listen 443; server_name _; ssl on; ssl_certificate certificate-bundle.crt; ssl_certificate_key private-key.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; location / { proxy_pass http://127.0.0.1:8080; } } }
反向代理的所有配置都发生在server{...}块内。
listen 443行指示Nginx侦听端口443(默认HTTPS端口)。
server_name _指示Nginx所有域名都与此服务器{...}部分匹配。
在线的ssl指示Nginx打开SSL / HTTPS。
ssl_certificate certificate-bundle.crt指向证书文件。证书文件路径是certificate-bundle.crt。此路径可以指向单个证书文件,或者在我的情况下是证书包。
ssl_certificate_key private-key.pem指向用于生成证书签名请求的原始私钥。Nginx需要此密钥才能与证书建立SSL连接。
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;line设置启用了哪些SSL协议。
ocation / {...}部分指示Nginx将所有来自网站虚拟目录结构的请求转发到运行在http://127.0.0.1:8080上的Web服务器,该服务器是端口8080上的同一台机器。
本文版权归是三僡然所有,转载请标明出处。欢迎转载,欢迎评论,欢迎分享。如果你有文章想分享可以联系我。
猜你喜欢
- 2024-10-11 部署支持 https 的 Nginx 服务(nginx配置https证书)
- 2024-10-11 nginx优化https(ocsp)(nginx配置生成https)
- 2024-10-11 Linux下配置Nginx并使用https协议
- 2024-10-11 超详解:HTTPS及配置Django+HTTPS开发环境
- 2024-10-11 如何使网站支持https访问?nginx配置https证书
- 2024-09-21 搭建Nginx(Https)+Tomcat实现负载均衡且Https自发证书配置
- 2024-09-21 「python」「nginx」「https」 Nginx 服务器 SSL 证书安装部署
- 2024-09-21 Nginx配置https实现加密认证(https加密证书)
- 2024-09-21 Nginx HTTPS的正反向代理测试(没有为http或https指定代理服务器)
- 2024-09-21 Nginx部署ssl证书开启https简要教程
你 发表评论:
欢迎- 最近发表
-
- Win10 TH2正式版官方ESD映像转换ISO镜像方法详解
- 使用iso镜像升级到Windows 10的步骤
- macOS Ventura 13.2 (22D49) Boot ISO 原版可引导镜像
- 安利一个用ISO镜像文件制作引导U盘的的小工具RUFUS
- CentOS 7使用ISO镜像配置本地yum源
- 用于x86平台的安卓9.0 ISO镜像发布下载:通吃I/A/N、完全免费
- AlmaLinux 9.6发布:升级工具、初步支持IBM Power虚拟化技术
- Rufus写入工具简洁介绍与教程(写入模式)
- 新硬件也能安装使用了,Edge版Linux Mint 21.3镜像发布
- 开源工程师:Ubuntu应该抛弃32位ISO镜像
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)