IP+端口访问:直接返回404,只允许使用域名访问,防止被端口扫描后恶意访问
#user nobody;
worker_processes 3;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server {
listen 80 default;
server_name _;
return 404;
}
server {
listen 443 ssl default_server;
server_name _;
#填写证书文件名称
ssl_certificate cert/[域名].pem;
#填写证书私钥文件名称
ssl_certificate_key cert/[域名].key;
return 404;
}
server {
listen 80;
server_name [域名];
rewrite ^(.*) https://[域名] permanent;
}
server {
#配置HTTPS的默认访问端口为443。
#如果未在此处配置HTTPS的默认访问端口,可能会造成Nginx无法启动。
#如果您使用Nginx 1.15.0及以上版本,请使用listen 443 ssl代替listen 443和ssl on。
listen 443 ssl;
#填写证书绑定的域名
server_name [域名];
root html;
index index.html index.htm;
#填写证书文件名称
ssl_certificate cert/[域名].pem;
#填写证书私钥文件名称
ssl_certificate_key cert/[域名].key;
ssl_session_timeout 5m;
#表示使用的加密套件的类型
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
#表示使用的TLS协议的类型,您需要自行评估是否配置TLSv1.1协议。
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}
}