nginx动静分离实例配置

2020-08-31  本文已影响0人  攻城老狮

0 效果

通过nginx的相关配置,实现tomcat请求的动态数据和 html,css,js以及图片等静态数据分离的效果。

例子:在linux服务器中创建存储静态数据的文件夹,通过nginx的配置,实现对静态文件的访问。

1 准备工作

1.1 在linux服务器中,新建存放静态资源的文件夹 static,并在static文件夹新建存放html页面的 www文件夹和存放图片的images文件夹

mkdir static
cd static
mkdir www images

1.2 在www文件夹中新建test.html页面

echo "<h1>static html</h1>" > test.html

1.3 在images文件夹中存放一张图片,名为01.jpg

1.4 使用docker 启动nginx容器,并将该静态资源文件夹 static 拷贝到容器内

docker run -d -p 80:80 --name mynginx nginx
docker cp static mynginx:/home

2 具体配置

2.1 进入到nginx的容器内部,并编辑配置文件

docker exec -it mynginx bash
cd /etc/nginx
vim nginx.conf

2.2 修改配置文件

#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_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;
    ##########################################################
    # another virtual host using mix of IP-, name-, and port-based configuration
    server {
        listen       80;
        server_name  62.234.149.220;

        location  /www/ {
           root /home/static/;
        }
        
        location /images/ {
            root /home/static/;
            autoindex on; #列出访问目录
        }
    }
    ##########################################################

    # 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;
    #    }
    #}

}

2.3 退出nginx容器,并重启nginx容器

docker restart mynginx

2.4 测试

通过本地浏览器测试访问静态资源

# 访问静态页面
http://62.234.149.220/www/test.html
# 访问图片资源
http://62.234.149.220/images/01.jpg
# 访问图片资源文件夹
http://62.234.149.220/images/
上一篇下一篇

猜你喜欢

热点阅读