server-configs-nginx

Nginx HTTP server boilerplate configs

Github星跟蹤圖

Nginx Server Configs

Build Status

Nginx Server Configs is a collection of configuration snippets that can help
your server improve the web site's performance and security, while also
ensuring that resources are served with the correct content-type and are
accessible, if needed, even cross-domain.

Getting Started

Using the Nginx server configs repo directly has a few required steps to be able to work.

Check nginx.conf settings

The first thing to check is that the nginx.conf file contains appropriate values for
your specific install.

Most specific variables are:

  • user
  • error_log
  • pid
  • access_log

Nginx test and restart

  • To verify Nginx config

    $ nginx -t 
    
  • To verify Nginx config with a custom file

    $ nginx -t -c nginx.conf
    
  • To reload Nginx and apply new config

    $ nginx reload 
    

Basic structure

This repository has the following structure:

./
├── conf.d/
│   ├── default.conf
│	  └── templates/
├── h5bp/
│   ├── basic.conf
│   ├── location/
│   └── .../
├── mime.types
└── nginx.conf
  • conf.d/

    This directory should contain all of the server definitions.

    Except if they are dot prefixed or non .conf extension, all files in this
    folder are loaded automatically.

    • templates folder

      Files in this folder contain a server template for secure and non-secure hosts.
      They are intended to be copied in the conf.d folder with all example.com
      occurrences changed to the target host.

  • h5bp/

    This directory contains config snippets (mixins) to be included as desired.

    There are two types of config files provided, individual config snippets and
    combined config files which provide convenient defaults.

    • basic.conf

      This file loads a small subset of the rules provided by this repository to add
      expires headers, allow cross domain fonts and protect system files from web
      access.
      The basic.conf file includes the rules which are recommended to always be
      defined.

    • location/

      Files in this folder contain one or more location directives. They are intended
      to be loaded in the server context (or, in a nested location block).

  • mime.types

    The mime.types file is responsible for mapping file extensions to mime types.

  • nginx.conf

    The main Nginx config file.

Usage

As a reference

To use as reference requires no special installation steps, download/checkout the
repository to a convenient location and adapt your existing Nginx configuration
incorporating the desired functionality from this repository.

Directly

To use directly, replace the Nginx config directory with this repository. for example:

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

Manage sites

$ cd /etc/nginx/conf.d
  • Creating a new site

    $ cp templates/example.com.conf .actual-hostname.conf
    $ sed -i 's/example.com/actual-hostname/g' .actual-hostname.conf
    
  • Enabling a site

    $ mv .actual-hostname.conf actual-hostname.conf
    
  • Disabling a site

    $ mv actual-hostname.conf .actual-hostname.conf
    
$ nginx reload

Support

  • Nginx v1.8.0+

Contributing

Anyone is welcome to contribute,
however, if you decide to get involved, please take a moment to review
the guidelines:

Acknowledgements

Nginx Server Configs is only possible thanks to all the awesome
contributors!

License

The code is available under the MIT license.

概覽

名稱與所有者h5bp/server-configs-nginx
主編程語言
編程語言Shell, DIGITAL Command Language (語言數: 0)
平台
許可證MIT License
發布數12
最新版本名稱5.0.1 (發布於 )
第一版名稱1.0.0 (發布於 2014-10-24 09:44:19)
創建於2013-07-28 22:19:57
推送於2024-03-22 06:38:24
最后一次提交
星數11k
關注者數389
派生數1.5k
提交數531
已啟用問題?
問題數116
打開的問題數0
拉請求數147
打開的拉請求數1
關閉的拉請求數69
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?
去到頂部