【Nginx】Nginx是
Nginx是什么?
Nginx是一种网络服务器软件。
-
- webサーバー
-
- リバースプロキシサーバー
-
- キャッシュサーバー
- ロードバランサー
可以扮演上述的角色。
网页服务器的设置
在这里,我们将考虑将Nginx作为Web服务器的设置方法。
設置檔案
默认的设置文件是/etc/nginx/nginx.conf。(根据操作系统的不同,文件的位置可能会有所不同。)
你还可以把额外的设置文件放在/etc/nginx/conf.d/下面。你可以将~.conf文件放置在那里,根据应用程序或用途进行设置。这些设置文件会通过nginx.conf中的include命令进行调用和使用。
include /etc/nginx/conf.d/*.conf;
设置文件由指令和参数构成。
ディレクティブ パラメータ;
user nobody;
事件、HTTP、服务器、位置指令是作为上下文引用的。上下文是用{}括起来的部分。
放置在上下文外的指令属于主要上下文。
user nobody; # a directive in the 'main' context
http {
# Configuration specific to HTTP and affecting all virtual servers
server {
# configuration of virtual server 1
location /one {
# configuration for processing URIs with '/one'
}
location /two {
# configuration for processing URIs with '/two'
}
}
server {
# configuration of virtual server 2
}
}
虚拟服务器的设置
为了处理HTTP请求,需要在配置文件中定义虚拟服务器。
http {
server {
listen 127.0.0.1:8080;
# The rest of server configuration
}
}
server指令中需要包含listen指令。这指定了Nginx要监听的IP地址和端口号。如果省略了IP地址,则监听所有IP地址。
你也可以通过设置多个server指令来定义多个虚拟服务器。
设置位置
通过设置location指令,可以根据请求URL来分别处理不同的操作。
server {
location / {
# URIが/に合致する場合の処理
}
location /images/ {
# URIが/images/に合致する場合の処理
}
}
Nginx会对所有location指令的参数进行URI测试,并应用匹配的指令。
在中国本土武编写一个选项:位置指令的参数可以用字符串前缀或正则表达式来描述。
location /some/path/ {
...
}
location ~ \.html? {
...
}
# /some/path/document.htmlのようなリクエストが合致する。
通过设置多个位置,可以根据URL将处理过程分开。
server {
location / {
# プロキシに処理を渡す
proxy_pass http://www.example.com;
}
location /images/ {
# 静的ファイルを提供する
root /data;
}
}
proxy_pass指令将请求传递给指定URL上的服务器。在上面的示例中,将所有不以”/images/”开头的URL请求转发给代理服务器。
root指令指示存在静态文件的路径。
设置错误页面
通过使用 error_page 指令,可以设置在特定错误码出现时返回的页面。在下方示例中,我们设置了当出现 404 错误时返回的页面。
error_page 404 /404.html;
你也可以进行重定向。
location /old/path.html {
error_page 404 =301 http:/example.com/new/path.html;
}
当使用旧的URL进行访问时,会通过301重定向到新的URL。(301状态码告诉浏览器页面已经被移到新的位置,并自动将旧地址替换为新地址。)
变量
nginx.conf文件可以设置变量。$符号是变量的标志。
你可以定义自己的变量,但也有预定义的变量。
例如,$remote_addr代表客户端的IP地址,$uri代表当前URI的值。
总结
Nginx是一种用于网页服务器的软件。
nginx.conf是默认的配置文件,在/etc/nginx/conf.d/目录下添加自定义的配置文件。
如果要将其用作Web服务器,则需要在server指令中设置虚拟服务器,并在location指令中指定每个URL的处理方式。
请参考