SpringBoot 实现图片上传 demo&Nginx 进行代理显示
5.重新加载 nginx
nginx -s reload
六、nginx 的配置文件(nginx.conf)
nginx 配置文件有三部分组成
1.全局块
从配置文件开始到 events 块之间的内容,主要会设置一些影响 nginx 服务器整体运行的配置指令。
比如:worker_processes 1; worker_processes 值越大,可以支持的并发处理量也越多。
2.events 块
events 块涉及的指令主要影响 nginx 服务器与用户的网络连接。?比如:worker_connection 1024; 支持的最大连接数。
3.http 块
nginx 服务器配置中最频繁的部分,http 块也可以包括 http 全局块、server 块。
七、nginx 配置图片的访问路径
图片文件上传至服务器 D:/images 中,然后通过 IP 地址/upload/加图片名称进行访问。
#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;
#log_format main 'remote_user [request" '
'body_bytes_sent "$http_referer" '
'"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;server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
#访问路径拼接 upload 访问本地绝对路径下的某图片 location /upload/ {alias D:/images/;autoindex on;}
location / {root html;index index.html index.htm;}
#error_page 404 /404.html;
redirect server error pages to the static page /50x.html
error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}
proxy the PHP scripts to Apache listening on 127.0.0.1:80
#location ~ .php$ {
proxy_pass http://127.0.0.1;
#}
pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
#}
deny access to .htaccess files, if Apache's document root
concurs with nginx's one
#location ~ /.ht {
deny all;
#}}
another virtual host using mix of IP-, name-, and port-based configuration
#server {
listen 8000;
listen somename:8080;
server_name somename alias another.alias;
location / {
root html;
index index.html index.htm;
}
#}
HTTPS server
#server {
listen 443 ssl;
server_name localhost;
ssl_certificate cert.pem;
ssl_certificate_key cert.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
#}
}
配置好 nginx.conf 记得重启一下服务器。效果如图:
八、java 后台代码
/**
文件上传*/@RestControllerpublic class FileController {
@PostMapping(value = "/fileUpload")public String fileUpload(@RequestParam(value = "file") MultipartFile file) {if (file.isEmpty()) {System.out.println("请选择图片");}String fileName = file.getOriginalFilename(); // 文件名 String suffixName = fileName.substring(fileName.lastIndexOf(".")); // 后缀名 String filePath = "D:/images/"; // 上传后的路径 fileName = UUID.randomUUID() + suffixName; // 新文件名 File dest = new
File(filePath + fileName);if (!dest.getParentFile().exists()) {dest.getParentFile().mkdirs();}try {
评论