Debian系统中的Nginx配置文件通常位于/etc/nginx/
目录下,主要包含以下几个配置文件:
nginx.conf
: 主配置文件,包含了Nginx服务器的基本配置信息,如运行参数、事件模型、HTTP服务器配置等。其他配置文件可以通过include
指令引入。
sites-available/
: 存放虚拟主机配置文件的目录。在这个目录下的配置文件需要通过创建符号链接到sites-enabled/
目录来启用。
sites-enabled/
: 存放已启用的虚拟主机配置文件的目录。这个目录下的配置文件会在Nginx启动时被加载。
conf.d/
: 存放额外的配置文件的目录。这些配置文件也会在Nginx启动时被加载。通常用于存放特定功能的配置,如SSL证书配置等。
koi-utf
, koi-win
: 这些文件包含了Koi编码的字符集映射,用于支持UTF-8编码的域名。
下面是一个典型的Nginx配置文件结构示例:
/etc/nginx/
├── nginx.conf
├── sites-available/
│ ├── default
│ └── example.com.conf
├── sites-enabled/
│ ├── default -> ../sites-available/default
│ └── example.com.conf -> ../sites-available/example.com.conf
├── conf.d/
│ ├── default.conf
│ └── example.com.conf
└── koi-utf
└── koi-utf
在这个示例中,nginx.conf
是主配置文件,sites-available/
目录下有两个虚拟主机配置文件default
和example.com.conf
,它们分别通过符号链接到sites-enabled/
目录来启用。此外,conf.d/
目录下还有两个额外的配置文件default.conf
和example.com.conf
。
一个典型的Nginx虚拟主机配置文件(如/etc/nginx/sites-available/example.com.conf
)结构如下:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
这个配置文件定义了一个虚拟主机,监听80端口,服务器名为example.com
和www.example.com
。网站的根目录为/var/www/example.com
,默认索引文件为index.html
和index.htm
。配置了两个location
块,一个用于处理普通的静态文件请求,另一个用于处理PHP文件的请求。最后,拒绝访问.ht
文件。