Nginx静态文件的配置与安全认定
本文主要讲述Nginx静态文件,怎样创建Nginx静态文件项目。这些内容都是一些门户网站和技术论坛找到的,中间可能有不少错误是我没有挑出的,欢迎大家 指正。
我们的目标是配置一个服务最快且cpu/io利用最有效的服务器,更重要的是一个安全的web服务器,下面的配置文件适用于最新版Nginx
#######################################################
### Calomel.org /etc/Nginx.conf BEGIN
#######################################################
#
pid /var/run/Nginx.pid;
user Nginx Nginx;
worker_processes 2;
events {
worker_connections 1024;
}
http {
## MIME types
include mime.types;
# types {
# p_w_picpath/gif gif;
# p_w_picpath/jpeg jpg;
# p_w_picpath/png png;
# p_w_picpath/bmp bmp;
# p_w_picpath/x-icon ico;
# text/css css;
# text/html html;
# text/plain bob;
# text/plain txt;
}
default_type application/octet-stream;
## Size Limits
client_body_buffer_size 8k;
client_header_buffer_size 1k;
client_max_body_size 1k;
large_client_header_buffers 1 1k;
## Timeouts
client_body_timeout 5;
client_header_timeout 5;
keepalive_timeout 5 5;
send_timeout 5;
## General Options
ignore_invalid_headers on;
limit_zone gulag $binary_remote_addr 1m;
recursive_error_pages on;
sendfile on;
server_name_in_redirect off;
server_tokens off;
## TCP options
tcp_nodelay on;
tcp_nopush on;
## Compression
gzip on;
gzip_static on;
gzip_buffers 16 8k;
gzip_comp_level 9;
gzip_http_version 1.0;
gzip_min_length 0;
gzip_types text/plain text/html text/css p_w_picpath/x-icon p_w_picpath/
bmp;gzip_vary on;
## Log Format
log_format main '$remote_addr $host $remote_user [$time_
local] "$request" ''$status $body_bytes_sent "$http_referer" "$http_user_
agent" "$gzip_ratio"';## Deny access to any host other than (www.)mydomain.com
server {
server_name _; #default
return 444;
}
## Server (www.)mydomain.com
server {
access_log /var/log/Nginx/access.log main buffer=32k;
error_log /var/log/Nginx/error.log info;
expires 31d;
limit_conn gulag 5;
listen 127.0.0.1:8080 rcvbuf=64k backlog=128;
root /disk01/htdocs;
server_name mydomain.com www.mydomain;
## SSL Options (only enable if you use a SSL certificate)
# ssl on;
# ssl_certificate /ssl_keys/mydomain.com_ssl.crt;
# ssl_certificate_key /ssl_keys/mydomain_ssl.key;
# ssl_ciphers HIGH:!ADH:!MD5;
# ssl_prefer_server_ciphers on;
# ssl_protocols SSLv3;
# ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 5m;
## Only allow GET and HEAD request methods
if ($request_method !~ ^(GET|HEAD)$ ) {
return 444;
}
## Deny illegal Host headers
if ($host !~* ^(mydomain.com|www.mydomain.com)$ ) {
return 444;
}
## Deny certain User-Agents (case insensitive)
## The ~* makes it case insensitive as opposed to just a ~
if ($http_user_agent ~* (Baiduspider|Jullo) ) {
return 444;
}
## Deny certain Referers (case insensitive)
## The ~* makes it case insensitive as opposed to just a ~
if ($http_referer ~* (babes|click|diamond|forsale|girl|jewelry|
love|nudit|organic|poker|porn|poweroversoftware|sex|teen|
video|webcam|zippo) ) {return 444;
}
## Redirect from www to non-www
if ($host = 'www.mydomain.com' ) {
rewrite ^/(.*)$ http://mydomain.com/$1 permanent;
}
## Stop Image and Document Hijacking
location ~* (\.jpg|\.png|\.css)$ {
if ($http_referer !~ ^(http://mydomain.com) ) {
return 444;
}
}
## Restricted Access directory
location ^~ /secure/ {
allow 127.0.0.1/32;
allow 10.10.10.0/24;
deny all;
auth_basic "RESTRICTED ACCESS";
auth_basic_user_file /var/www/htdocs/secure/access_list;
}
## Only allow these file types to document root
location / {
if ($request_uri ~* (^\/|\.html|\.jpg|\.org|\.png|\.css|
favicon\.ico|robots\.txt)$ ) {break;
}
return 444;
}
## Serve an empty 1x1 gif _OR_ an error 204 (No Content)
for favicon.icolocation = /favicon.ico {
#empty_gif;
return 204;
}
## System Maintenance (Service Unavailable)
if (-f $document_root/system_maintenance.html ) {
error_page 503 /system_maintenance.html;
return 503;
}
## All other errors get the generic error page
error_page 400 401 402 403 404 405 406 407 408 409 410 411
412 413 414 415 416 417500 501 502 503 504 505 /error_page.html;
location /error_page.html {
internal;
}
}
}
#
#######################################################
### Calomel.org /etc/Nginx.conf END
#######################################################
以上就是对Nginx静态文件命令的详细介绍希望大家有所收获。
转载于:https://blog.51cto.com/lucifer119/1425099
Nginx静态文件的配置与安全认定相关推荐
- Nginx静态文件路径配置
root目录与alias目录的区别 Nginx路径location配置中,使用root目录与alias目录的区别 1)alias指定的目录是准确的,即location匹配访问的path目录下的文件直接 ...
- Nginx缓存、静态文件缓存配置
Nginx静态Server基本配置 server {listen 80; #监听的端口server_name www.test.com; #监听的域名charset utf-8;#编码root /us ...
- 各种 django 静态文件的配置总结【待续】
2019独角兽企业重金招聘Python工程师标准>>> 最近在学习django框架的使用,想引用静态css文件,怎么都引用不到,从网搜了好多,大多因为版本问题, 和我现在的使用的da ...
- Nginx日志文件的配置
Nginx日志文件的配置 Nginx的日志文件,默认在Nginx程序安装目录的logs二级目录下. 与Nginx日志相关的指令有两条 log_format,用来设置日志的记录格式. Access_lo ...
- Flask框架的学习——04—(模版继承、静态文件的配置、豆瓣APP界面案例实现)
1.模版继承 Flask中的模板可以继承,通过继承可以把模板中许多重复出现的元素抽取出来,放在父模板中,并且父模板通过定义block给子模板开一个口,子模板根据需要,再实现这个block,假设现在有一 ...
- doraemon的python(大更新) django静态文件的配置(出错多的地方)
### 12.2 静态文件的使用#### 12.2.1静态文件的配置和使用 settings.py```python STATIC_URL = '/static/' #别名 STATICFILES_D ...
- nginx 静态文件缓存
目的: 缓存nginx服务器的静态文件.如css,js,htm,html,jpg,gif,png,flv,swf,这些文件都不是经常更新.便于缓存以减轻服务器的压力. 实现: nginx proxy_ ...
- Nginx静态资源优化配置之tcp_nopush和tcp_nodelay
(2)tcp_nopush:该指令必须在sendfile打开的状态下才会生效,主要是用来提升网络包的传输'效率' 语法 tcp_nopush on|off; 默认值 tcp_nopush off; 位置 ...
- Nginx静态资源优化配置之sendfile
静态资源优化配置语法 Nginx对静态资源如何进行优化配置.这里从三个属性配置进行优化: sendfile on; tcp_nopush on; tcp_nodeplay on; (1)sendfile ...
最新文章
- 双重指针作为函数参数的妙用
- jQuery实现表格拖动排序
- 关于oracle中table函数的使用
- java int.parse_java数据类型转换,parseXXX(String)或valueOf(String)有什么区别?
- Spark Streaming从Kafka中获取数据,并进行实时单词统计,统计URL出现的次数
- C# 图片、文件等加入Project Resources
- photoshop问题
- Linux shell脚本启动 停止 重启jar包
- android 加载图片并在上面画图
- SQL Server 索引结构及其使用
- 2016年3例严重工控安全事故经验教训总结
- jQuery实现tab选项卡
- 计算机二级java判卷标准_计算机等级考试二级评分标准
- 《统计学》第八版贾俊平第三章课后答案Excel
- CCF 201903-1 小中大
- linux 如何加密文件夹,如何加密个别文件夹?
- Seaborn使用violinplot函数可视化分组小提琴图(violin plot)、使用inner函数设置在小提琴图中使用虚线显示分位数位置(inner = ‘quartile‘)
- Android 一个改善的okHttp封装库
- 西安交通大学城市学院计算机二级,西安交通大学城市学院计算机系举行考研经验分享交流会...
- EXCL模板报盘数据导入