Article

各种 Web 服务器的样板配置「Nginx」

Nginx 服务器配置

Nginx Server Configs 是配置片段的集合,可以帮助您的服务器提高网站的性能和安全性,同时还确保使用正确的内容类型来提供资源,并且在需要时甚至跨域都可以访问这些资源。

入门

直接使用 Nginx 服务器配置需要一些必要的步骤才能正常工作。

检查 nginx.conf 设定

首先要检查的是,该 nginx.conf 文件包含适合您的特定设定值。

最具体的变量是:

  • user
  • error_log
  • pid
  • access_log

在 Microsoft IIS 服务器中,web.config 是允许 Web 服务器配置的配置文件。H5BP 团队已经确定了许多使网页快速安全的最佳实践服务器规则,这些规则可以通过配置 web.config 文件来应用。

web.config 文件中的许多设置都包含最佳做法,以提高 Web 性能。让我们深入研究文件并查看实践列表:

Nginx 测试并重启

  • 验证 Nginx 配置
nginx -t
  • 使用自定义文件验证Nginx配置
nginx -t -c nginx.conf

重新加载 Nginx 并应用新的配置

nginx -s reload

基本结构

该存储库具有以下结构:

./
├── conf.d/
│   ├── default.conf
│   └── templates/
├── h5bp/
│   ├── basic.conf
│   ├── location/
│   └── .../
├── mime.types
└── nginx.conf
  • conf.d/ 该目录应包含所有server定义。 除非它们是点前缀或非.conf扩展名,否则此文件夹中的所有文件都会自动加载。

    • templates此文件夹中的文件包含server用于安全和非安全主机的模板。它们打算复制到conf.d文件夹中,并且所有实例都example.com更改为目标主机。
  • h5bp/ 此目录包含要根据需要包含的配置片段(混入)。 提供了两种类型的配置文件,单独的配置摘要和组合的配置文件,它们提供了方便的默认值。

    • basic.conf 此文件加载此存储库提供的规则的一小部分,以添加过期标题,允许跨域字体并保护系统文件免受 Web 访问。该basic.conf文件包含建议始终定义的规则。

    • location/ 此文件夹中的文件包含一个或多个location指令。它们打算在server上下文中(或在嵌套location块中)加载。

  • mime.types 文件负责将文件扩展名映射到mime类型。

  • nginx.conf 主要的Nginx配置文件。

用法参考

要用作参考,不需要任何特殊的安装步骤,可以将存储库下载/签出到方便的位置,并使现有的Nginx配置结合了此存储库中所需的功能。

下载最新版本的存档

要直接使用,请使用此存储库替换 Nginx config 目录。例如:

nginx -s stop
cd /etc
mv nginx nginx-previous
git clone https://github.com/h5bp/server-configs-nginx.git nginx
# install-specific edits
nginx

管理网站

支持 Nginx 的 v 1.8.0 +

  • 访问配置
cd /etc/nginx/conf.d
  • 创建新站
cp templates/example.com.conf .actual-hostname.conf
sed -i 's/example.com/actual-hostname/g' .actual-hostname.conf
  • 启用网站
mv .actual-hostname.conf actual-hostname.conf
  • 禁用网站
mv actual-hostname.conf .actual-hostname.conf
  • 重新载入
nginx -s reload

其他服务器配置样本

「Apache」 「IIS」 「Lighttpd」 「Nginx」