图片服务器已经搭建好,并且已实现上传,但是图片一下访问不了,前前后后折腾了几天很是崩溃,今天利用反向代理终于实现,由于以前接触宝塔比较少,故发此贴,一为自已日后翻查、二为方便各位朋友沟通交流,直接上图:
1. 开启ngnix后启动,无需做任何配置、无需做任何配置,后续都会自动添加到配置当中,如需更改端口的除外,我用的是默认端口,因为我是一通乱配之后,又回到了起点所以在此说明,避免朋友们走弯路,在此说明,以下为我的配置,可对照参考:
user www www;
worker_processes auto;
error_log /www/wwwlogs/nginx_error.log crit;
pid /www/server/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;
events
{
use epoll;
worker_connections 51200;
multi_accept on;
}
http
{
include mime.types;
#include luawaf.conf;
include proxy.conf;
default_type application/octet-stream;
server_names_hash_bucket_size 512;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 50m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 256k;
fastcgi_intercept_errors on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
limit_conn_zone $binary_remote_addr zone=perip:10m;
limit_conn_zone $server_name zone=perserver:10m;
server_tokens off;
access_log off;
server
{
listen 888;
server_name phpmyadmin;
index index.html index.htm index.php;
root /www/server/phpmyadmin;
location ~ /tmp/ {
return 403;
}
#error_page 404 /404.html;
include enable-php.conf;
location ~ .*\.(js|css)?$
{
expires 12h;
}
location ~ /\.
{
deny all;
}
access_log /www/wwwlogs/access.log;
}
include /www/server/panel/vhost/nginx/*.conf;
}
2.开启网站反向代理,具体如下图:
3.编辑反向代理配置文件,添加路径拦截,以下为我的配置:
#PROXY-START/
location /
{
proxy_pass http://127.0.0.1:888;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
add_header X-Cache $upstream_cache_status;
#Set Nginx Cache
add_header Cache-Control no-cache;
}
location /images/
{
alias /www/wwwroot/ftpuser/ftpuser/;
}
#PROXY-END/
4.按理说此时已经可以通过路径进行访问了,如我的访问域为是https://dace.5ang.net/images//uploads/2021/08/30/e2fa8136d634df8b7dd77f4837e00a8.png
此时能访问到/www/wwwroot/ftpuser/ftpuser/下uploads文件夹的内空,但是无论如何却访问不了;
5.多次实现后发现只要删除图片的相关拦截即可访问,对你没看错,就这么简单,折腾了两天,大坑,具体原因还没有研究,欢迎朋友们留言说明告知:删除部分如下:
6.到此完美。