利用Nginx搭建可靠的图片服务

利用Nginx搭建可靠的图片服务

nginx版本:1.19.2
windows操作系统,Linux下修改对应的图片路径位置即可。

看看效果

修改nginx.conf配置信息

配置图片服务

在http下的server节点中增加location配置

location ~ .*\.(gif|jpg|jpeg|png)$ {
      # 增加相关配置内容
}

以下所有信息均在location中进行配置

配置图片路径

root E:/images/;#指定图片存放路径

配置缓存等信息

proxy_store on;
proxy_store_access user:rw group:rw all:rw;
proxy_temp_path         E:/images/;#图片路径
proxy_redirect          off;

proxy_set_header        Host 127.0.0.1;
proxy_set_header        X-Real-IP $remote_addr;
proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;

解决客户端大文件传

client_max_body_size    100m;
client_body_buffer_size 1280k;
proxy_connect_timeout   900;
proxy_send_timeout      900;
proxy_read_timeout      900;
proxy_buffer_size       40k;
proxy_buffers           40 320k;
proxy_busy_buffers_size 640k;
proxy_temp_file_write_size 640k;

解决图片被盗用

用简单粗暴的IP限制法,指定可访问图片服务的IP。

allow 192.168.1.50;
deny all;

完整配置


#user  nobody;
worker_processes  1;

#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;
    sendfile        on;
    server {
        listen       8077;
        server_name  localhost;
		#配置图片服务
		location ~ .*\.(gif|jpg|jpeg|png)$ {
			#配置IP访问限制
			allow all; #192.168.1.50;
			deny all;
			
			#配置图片路径
			expires 24h;
			root E:/images/;#指定图片存放路径						
			
			#配置缓存
			proxy_store on;
			proxy_store_access user:rw group:rw all:rw;
			proxy_temp_path         E:/images/;#图片路径
			proxy_redirect          off;

			proxy_set_header        Host 127.0.0.1;
			proxy_set_header        X-Real-IP $remote_addr;
			proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
			
			#解决客户端大文件传
			client_max_body_size    100m;
			client_body_buffer_size 1280k;
			proxy_connect_timeout   900;
			proxy_send_timeout      900;
			proxy_read_timeout      900;
			proxy_buffer_size       40k;
			proxy_buffers           40 320k;
			proxy_busy_buffers_size 640k;
			proxy_temp_file_write_size 640k;
			
						
		}

        location / {
            root   html;
            index  index.html index.htm;
        }

 
    }


}

nginx基本操作

启动  start nginx
停止  nginx.exe -s stop 或 nginx.exe -s quit
重新载入 nginx.exe -s reload

查询nginx进程
tasklist /fi "imagename eq nginx.exe"

杀掉进程
taskkill   /fi   "imagename  eq   nginx"  /f
posted @ 2020-09-23 13:25  开怀的猫  阅读(330)  评论(0编辑  收藏  举报