1. #user nobody;
    2. worker_processes 1; #工作进程:数目。根据硬件调整,通常等于cpu数量或者2cpu数量。
    3. #错误日志存放路径
    4. #error_log logs/error.log;
    5. #error_log logs/error.log notice;
    6. #error_log logs/error.log info;
    7. #pid logs/nginx.pid; # nginx进程pid存放路径
    8. events {
    9. worker_connections 1024; # 工作进程的最大连接数量
    10. }
    11. http {
    12. include mime.types; #指定mime类型,由mime.type来定义
    13. default_type application/octet-stream;
    14. # 日志格式设置
    15. #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
    16. # '$status $body_bytes_sent "$http_referer" '
    17. # '"$http_user_agent" "$http_x_forwarded_for"';
    18. #access_log logs/access.log main; #用log_format指令设置日志格式后,需要用access_log来指定日志文件存放路径
    19. sendfile on; #指定nginx是否调用sendfile函数来输出文件,对于普通应用,必须设置on
    20. 如果用来进行下载等应用磁盘io重负载应用,可设着off,以平衡磁盘与网络io处理速度,降低系统uptime
    21. #tcp_nopush on; #此选项允许或禁止使用socketTCP_CORK的选项,此选项仅在sendfile的时候使用
    22. #keepalive_timeout 0; #keepalive超时时间
    23. keepalive_timeout 65;
    24. #gzip on; #开启gzip压缩服务
    25. #虚拟主机
    26. server {
    27. listen 80; #配置监听端口号
    28. server_name localhost; #配置访问域名,域名可以有多个,用空格隔开
    29. #charset koi8-r; #字符集设置
    30. #access_log logs/host.access.log main;
    31. location / {
    32. root html;
    33. index index.html index.htm;
    34. }
    35. #错误跳转页
    36. #error_page 404 /404.html;
    37. # redirect server error pages to the static page /50x.html
    38. #
    39. error_page 500 502 503 504 /50x.html;
    40. location = /50x.html {
    41. root html;
    42. }
    43. # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    44. #
    45. #location ~ \.php$ {
    46. # proxy_pass http://127.0.0.1;
    47. #}
    48. # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    49. #
    50. #location ~ \.php$ { #请求的url过滤,正则匹配,~为区分大小写,~*为不区分大小写。
    51. # root html; #根目录
    52. # fastcgi_pass 127.0.0.1:9000; #请求转向定义的服务器列表
    53. # fastcgi_index index.php; # 如果请求的Fastcgi_index URI是以 / 结束的, 该指令设置的文件会被附加到URI的后面并保存在变量$fastcig_script_name
    54. # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
    55. # include fastcgi_params;
    56. #}
    57. # deny access to .htaccess files, if Apache's document root
    58. # concurs with nginx's one
    59. #
    60. #location ~ /\.ht {
    61. # deny all;
    62. #}
    63. }
    64. server {
    65. listen 9999;
    66. server_name localhost;
    67. location / {
    68. root /usr/local/front/dist;
    69. index index.html index.htm;
    70. }
    71. error_page 500 502 503 504 /50x.html;
    72. location /50x.html{
    73. root /usr/local/front/dist;
    74. }
    75. location /prod-api/ {
    76. proxy_pass http://localhost:8080/;# 代理接口地址
    77. }
    78. }
    79. # another virtual host using mix of IP-, name-, and port-based configuration
    80. #
    81. #server {
    82. # listen 8000;
    83. # listen somename:8080;
    84. # server_name somename alias another.alias;
    85. # location / {
    86. # root html;
    87. # index index.html index.htm;
    88. # }
    89. #}
    90. # HTTPS server
    91. #
    92. #server {
    93. # listen 443 ssl; #监听端口
    94. # server_name localhost; #域名
    95. # ssl_certificate cert.pem; #证书位置
    96. # ssl_certificate_key cert.key; #私钥位置
    97. # ssl_session_cache shared:SSL:1m;
    98. # ssl_session_timeout 5m;
    99. # ssl_ciphers HIGH:!aNULL:!MD5; #密码加密方式
    100. # ssl_prefer_server_ciphers on; # ssl_prefer_server_ciphers on; #
    101. # location / {
    102. # root html;
    103. # index index.html index.htm;
    104. # }
    105. #}
    106. }

    [root]
    语法:root path
    默认值:root html
    配置段:http、server、location、if
    [alias]
    语法:alias path
    配置段:location

    1. location ^~ /t/ {
    2. root /www/root/html/;
    3. }

    如果一个请求的URI是/t/a.html时,web服务器将会返回服务器上的/www/root/html/t/a.html的文件。

    1. location ^~ /t/ {
    2. alias /www/root/html/new_t/;
    3. }

    如果一个请求的URI是/t/a.html时,web服务器将会返回服务器上的/www/root/html/new_t/a.html的文件。注意这里是new_t,因为alias会把location后面配置的路径丢弃掉,把当前匹配到的目录指向到指定的目录。
    1. 使用alias时,目录名后面一定要加”/“。
    3. alias在使用正则匹配时,必须捕捉要匹配的内容并在指定的内容处使用。
    4. alias只能位于location块中。(root可以不放在location中)