Home  >  Article  >  Backend Development  >  Detailed explanation of basic configuration of Nginx server nginx static server 403 nginx as file server nginx configuration

Detailed explanation of basic configuration of Nginx server nginx static server 403 nginx as file server nginx configuration

WBOY
WBOYOriginal
2016-07-29 08:49:33930browse

Overall understanding of Nginx configuration

By default, Nginx server configuration files are stored in the installation directory Conf, and the main configuration file is named nginx.conf. Its content is as follows:

<code><span>#user  nobody;                            #全局块</span>
worker_processes  <span>1</span>;

<span>#error_log  logs/<span>error</span>.log;</span><span>#error_log  logs/<span>error</span>.log  notice;</span><span>#error_log  logs/<span>error</span>.log  info;</span><span>#pid        logs/nginx.pid;</span>events {                                   <span>#events 块</span>
    worker_connections  <span>1024</span>;
}


http {                                      <span>#http块</span>
    include       mime.types;               <span>#http全局块</span>
    default_type  application/octet-stream;

    <span>#log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '</span><span>#                  '$status $body_bytes_sent "$http_referer" '</span><span>#                  '"$http_user_agent" "$http_x_forwarded_for"';</span><span>#access_log  logs/access.log  main;</span>    sendfile        on;
    <span>#tcp_nopush     on;</span><span>#keepalive_timeout  0;</span>
    keepalive_timeout  <span>65</span>;

    <span>#gzip  on;</span>    server {                                <span>#server块</span>
        listen       <span>80</span>;                    <span>#server全局块</span>
        server_name  localhost;

        <span>#charset koi8-r;</span><span>#access_log  logs/host.access.log  main;</span>        location / {                       <span>#location块</span>
            root   html;
            index  index.html index.htm;
        }

        <span>#error_page  404              /404.html;</span><span># redirect server <span>error</span> pages to the static page /50x.html</span><span>#</span>
        error_page   <span>500</span><span>502</span><span>503</span><span>504</span>  /<span>50</span>x.html;
        location = /<span>50</span>x.html {           <span>#location块</span>
            root   html;
        }

        <span># proxy the PHP scripts to Apache listening on 127.0.0.1:80</span><span>#</span><span>#location ~ \.php$ {             #location块</span><span>#    proxy_pass   http://127.0.0.1;</span><span>#}</span><span># pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000</span><span>#</span><span>#location ~ \.php$ {           #location块</span><span>#    root           html;</span><span>#    fastcgi_pass   127.0.0.1:9000;</span><span>#    fastcgi_index  index.php;</span><span>#    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;</span><span>#    include        fastcgi_params;</span><span>#}</span><span># deny access to .htaccess files, <span>if</span> Apache's document root</span><span># concurs with nginx's one</span><span>#</span><span>#location ~ /\.ht {</span><span>#    deny  all;</span><span>#}</span>
    }


    <span># another virtual host using mix of IP-, name-, and port-based configuration</span><span>#</span><span>#server {                              #server块</span><span>#    listen       8000;</span><span>#    listen       somename:8080;</span><span>#    server_name  somename  alias  another.alias;</span><span>#    location / {                     #location块</span><span>#        root   html;</span><span>#        index  index.html index.htm;</span><span>#    }</span><span>#}</span><span># HTTPS server</span><span>#</span><span>#server {</span><span>#    listen       443 ssl;</span><span>#    server_name  localhost;</span><span>#    ssl_certificate      cert.pem;</span><span>#    ssl_certificate_key  cert.key;</span><span>#    ssl_session_cache    shared:SSL:1m;</span><span>#    ssl_session_timeout  5m;</span><span>#    ssl_ciphers  HIGH:!aNULL:!MD5;</span><span>#    ssl_prefer_server_ciphers  on;</span><span>#    location / {</span><span>#        root   html;</span><span>#        index  index.html index.htm;</span><span>#    }</span><span>#}</span>}</code>

From the configuration file we can summarize as follows
nginx文件服务器,nginx缓存服务器,nginx服务器重启,nginx图片服务器,nginx服务器搭建,nginx视频服务器,nginx 静态 服务器,nginx 流媒体服务器,nginx搭建web服务器,nginx搭建图片服务器,nginx 图片服务器配置,nginx 静态文件服务器,nginx 静态服务器 403,nginx做文件服务器,nginx配
The nginix.conf configuration consists of three blocks: global block, events block and http block. The http block contains multiple server blocks, and each server block can contain multiple location blocks.

The meaning of each module in the configuration file

Global block

The global block is part of the default configuration file from the beginning to the events module. Mainly set the configuration instructions that affect the overall operation of the Nginx server. The scope of this instruction is the global Nginix server.
Usually includes the user (group) running the Nginx server, the number of worker processes allowed for production, Nginix process Pid storage path, log storage path and type, and configuration file introduction, etc.

events block

events block The instructions involved mainly affect the network connection between the Nginx server and the user. Commonly used configurations are:
Whether to enable serialization of network connections under multiple worker processes;
Whether to allow multiple network connections to be accepted at the same time;
Which event model to choose to handle connection requests;
The maximum number of connections that each worker process can support simultaneously, etc.
This part of the instructions has a great impact on the performance of the Nginix server. In the actual configuration, it should be flexibly adjusted according to the actual situation.

http block

http block is an important part of Nginix server configuration. Most functions of proxy, cache and log definitions and the configuration of third-party modules can be placed in this module. The main configuration in the http global block is as follows:
File introduction;
MIME-TYPE definition;
Log customization;
Whether to use sendfile to transfer files;
Connection timeout;
Number of single connection requests online, etc.

server block

server block is closely related to the concept of "virtual host". Each server block can be equivalent to a virtual host. The scope of the server block is this server block and will not affect other server blocks. Like the http block, the server block can also contain its own global block and multiple location blocks. The two main configurations of the server global block are as follows:
Monitoring configuration of virtual host;
The name or IP configuration of the virtual host

location block

Each server block can contain multiple location blocks. Strictly speaking, location is actually an instruction of the server block. The main function is to match the request string received by the Nginx server, match the string except the virtual host name, and process the specific request. Functions such as address direction, data caching, and response control are all implemented in this part.

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

The above has introduced a detailed explanation of the basic configuration of the Nginx server, including nginx and server aspects. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn