网站首页 > 技术教程 正文
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简要教程
欢迎 你 发表评论:
- 最近发表
- 标签列表
-
- 下划线是什么 (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)

本文暂时没有评论,来添加一个吧(●'◡'●)