千家信息网

Linux使用Nginx搭建图片服务器

发表于:2024-11-27 作者:千家信息网编辑
千家信息网最后更新 2024年11月27日,安装Nginx#apt-get install nginx#yum install nginx查看安装路径#whereis nginx配置nginx location ~ .*\.(gif|j
千家信息网最后更新 2024年11月27日Linux使用Nginx搭建图片服务器

安装Nginx

#apt-get install nginx#yum install nginx

查看安装路径

#whereis nginx

配置nginx

     location ~ .*\.(gif|jpg|jpeg|png)$ {            expires 24h;            root /data/www/images/;#指定图片存放路径            access_log /data/www/images/nginx/logs/images.log;#图片 日志路径            proxy_store on;            proxy_store_access user:rw group:rw all:rw;            proxy_temp_path         /data/www/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    10m;            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;            if ( !-e $request_filename)            {                 proxy_pass  http://127.0.0.1:8088;#代理访问地址            }        }

备注: /data/www/images/nginx/logs/、/data/www/images路径必须创建好。
在重启nginx服务之前,最好先测试一下nginx的配置文件。

测试配置文件

# nginx -t

备注:nginx是被我配置了全局软连接,所以可以不加绝对路径。

重启nginx服务

# nginx -s reload

测试访问图片


备注:将自己准备好的图片复制到/data/www/images下面,打开浏览器直接访问即可,注意端口配置为8088

碰到的问题

重启nginx服务报错

1.nginx.conf 文件中配置的图片路径,如果没有事先创建好,就会报错。所以建议在重启服务之前先执行配置文件测试命令:nginx -t
2.nginx: [error] invalid PID number "" in "/usr/local/nginx/logs/nginx.pid",这个错误是因为/usr/local/nginx/logs/nginx.pid不存在,或者内容为空导致的,那么我们只有执行如下命令即可:

# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

重启即可完成,然后访问。

访问图片服务器失败

设置路径权限,关闭防火墙,重新访问图片服务器。
#chmod 777 -R /data/www/images/
#ufw disable

备注:因为我的是linux mint系统所以我的开启关闭服务是通过ufw disable和ufw enable进行关闭防火墙和开启防火墙。

0