利用nginx构建简易文件服务器

1.nginx文件配置

.新建一个nginx子配置文件fileDir.conf,内容如下:

fileDir.conf

注意:这里tomcat端口设为8888,这个端口不一定非要在云服务器安全组里开放访问,nginx作为反向代理,通过监听端口8080(需要在云服务器安全组入口方向开放8080端口),客户端请求该端口后,nginx会转发这些请求至tomcat,继而交由tomcat处理这些请求

通过location的规则匹配,请求后缀是图片格式的请求将被root到指定目录:/home/webFiles/,当然也可以指定其他资源文件格式

2.tomcat文件配置

在server.xml中做如下常规配置


3.启动tomcat和nginx

编写webApp,通过tomcat上传图片,并通过浏览器测试访问的刚刚上传的图片,哦啦

4.记录下期间走过的坑

坑一:webApp打包部署到tomcat以后,发现工程里的css和js文件全部都报404错误,浏览器调试发现这样文件加载的路径全都不对,变成了localhost/xx;这样肯定是不对,通过查找资料发现,经过nginx反向代理后,需要在代理头部信息带上实际Host和端口号,如下

    proxy_set_header Host $host:${server_port};

坑二:通过webApp上传的图片,在浏览器输入地址后报nginx出错,并没显示出图片来

跟umask有关,linux默认umask为022,对应权限为755,其它用户可读可执行,可以vim /etc/profile,搜索umusk关键字查看,而tomcat8默认umask为027,对应权限为750,也就是说其它用户连可读的权限都没有。

可打开catalina.sh文件,搜索umask查看

修改catalina.sh中的umask为0022,与操作系统保持一致,然后重启tomcat即可。

你可能感兴趣的:(利用nginx构建简易文件服务器)