大家好,又见面了,我是你们的朋友全栈君。
传统的web项目,一般都将静态资源存放在 webroot的目录下,这样做很方便获取静态资源,但是如果说web项目很大,用户很多,静态资源也很多时,服务器的性能 或许就会很低下了。这种情况下一般都会需要一个静态资源的服务器。
搭建nginx服务器首先得安装nginx服务,关于nginx服务的安装可以参考我的另一篇博客《nginx服务安装》这里直接介绍静态服务器的配置
进入nginx安装目录的conf目录下,修改nginx.conf文件,在一个server{}中添加 一个location 部分配置代码如下
root@ubuntu:/usr/local/nginx/conf# vi nginx.conf
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
location /image/ {
root /usr/local/myImage/;
autoindex on;
}
}
从上面的配置可以看出来 端口为80,server_name为localhost(写ip地址也可以)
location /image/ {
root /usr/local/myImage/;
autoindex on;
}
这个配置表示输入 localhost:80/image/ 时会访问本机的/usr/local/myImage/image/ 目录。所以要新建/usr/local/myImage/image/ 目录,同时还要在nginx安装目录的html目录中新建一个 与 location中 image同名的image目录,虽然该目录里面什么也没有,在/usr/local/my Image/image/ 中我们放一张图片1.jpg上去,重启nginx服务,就可以通过 localhost:80/image/1.jpg访问了
root@ubuntu:/usr/local/nginx/html# mkdir image
root@ubuntu:/usr/local/nginx/html# mkdir /usr/local/myImage/image
#放一张照片上去#
root@ubuntu:/usr/local/nginx/html# cd /usr/local/myImage/image
root@ubuntu:/usr/local/myImage/image# ls
1.jpg
root@ubuntu:/usr/local/myImage/image#
重启 nginx
root@ubuntu:/usr/local/nginx/sbin# ./nginx -s reload
root@ubuntu:/usr/local/nginx/sbin#
打开浏览器 输入 server_name:80/image/1.jpg 就可以访问该静态图片了如下图
您也可以移除掉root 和 autoindex 配置,直接在html目录下的image目录下新建一张图片1.jpg。
或者在nginx.conf 配置中在server下配置root 如下
server {
listen 88;
server_name localhost;
root /home/ubuntu/static/;
}
访问 http:hostName:88/dir/file 就会自动访问 服务器/home/ubuntu/static/dir 目录下的文件file
注意nginx的启动用户,确保该用户有权限访问目录下的文件
新版本nginx的启动用户为 www-data!
在这里只是简单地介绍了静态资源服务器的配置 ,关于资源缓存的配置并没有介绍
文件上传到nginx服务器参考这篇博客vsftpd ftp服务器搭建
关于静态资源的缓存以及防盗链可以参考这篇博客nginx静态资源缓存
关于 nginx.conf中location的配置 可以参考这篇博客nginx.conf location 的配置
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/159173.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...