zoukankan      html  css  js  c++  java
  • 阿里云部署 (二)

    接着上一篇(安装完docker 和 SQL server 之后,  为了可以在服务器上build, 那个dotnet 也需要装上)

    1.自定义网络:

     docker network ls
    
     docker network create --subnet 192.168.0.0/16  --gateway 192.168.0.1  mynet 
    
      docker run --name mynginx -p 80:80 -p 443:443 -d --net mynet  -v /nginxdata:/usr/share/nginx -v /ngnixconf:/etc/nginx/conf.d2/  nginx

    在Linux 系统下,放 /nginxdata/html/index.html,公网IP 可以访问到nginx 了, 这里放公司 主页。 

    原来docker 的  /etc/nginx/conf.d/ 下有default.conf。 我们不用这个。

    修改 nginx 的根配置。

    在宿主机中:docker cp mynginx:/etc/nginx/nginx.conf /

    编辑之后(修改最后一行的include 路径),执行:docker cp /nginx.conf  mynginx:/etc/nginx/nginx.conf

    在 /ngnixconf 中添加 a.conf 文件: 这里的一个Server 大概相当于IIS的一个站点

    server {
      	listen 443 ssl;   #SSL协议访问端口号为443。此处如未添加ssl,可能会造成Nginx无法启动。
    
            server_name ryrkj.com;  #将localhost修改为您证书绑定的域名,例如:www.example.com。
            ssl_certificate  /usr/share/nginx/5153330_ryrkj.com.pem;   #将domain name.pem替换成您证书的文件名。
            ssl_certificate_key  /usr/share/nginx/5153330_ryrkj.com.key;   #将domain name.key替换成您证书的密钥文件名。
            ssl_session_timeout 5m;
            ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;  #使用此加密套件。
            ssl_protocols TLSv1 TLSv1.1 TLSv1.2;   #使用该协议进行配置。
            ssl_prefer_server_ciphers on;
            location / {
                    root /usr/share/nginx/html; # 静态站点的文件路径
                    index index.html index.htm; # 默认文档
            }
    }
    root与alias主要区别在于nginx如何解释location后面的uri,这会使两者分别以不同的方式将请求映射到服务器文件上。
    root的处理结果是:root路径+location路径
    alias的处理结果是:使用alias路径替换location路径
    alias是一个目录别名的定义,root则是最上层目录的定义。
    还有一个重要的区别是alias后面必须要用“/”结束,否则会找不到文件的。。。而root则可有可无~~
    
    root实例:
    
    location ^~ /t/ {
         root /www/root/html/;
    }
    location ^~ /t/ {
         root /www/root/html/;
    }
    如果一个请求的URI是/t/a.html时,web服务器将会返回服务器上的/www/root/html/t/a.html的文件。
    
    alias实例:
    
    location ^~ /t/ {
     alias /www/root/html/new_t/;
    }
    
    location ^~ /t/ {
     alias /www/root/html/new_t/;
    }
    如果一个请求的URI是/t/a.html时,web服务器将会返回服务器上的/www/root/html/new_t/a.html的文件。注意这里是new_t,因为alias会把location后面配置的路径丢弃掉,把当前匹配到的目录指向到指定的目录。
    
    注意:
    1. 使用alias时,目录名后面一定要加"/"。
    3. alias在使用正则匹配时,必须捕捉要匹配的内容并在指定的内容处使用。
    4. alias只能位于location块中。(root可以不放在location中)

    添加 rewrite.conf 文件:

    server {
        listen 80;
        rewrite ^(.*)$ https://$host$1; 
        location / {
            index index.html index.htm;
        }
    }

    进入docker ,nginx -s reload

    https/http 都可以正常访问。

    气功波(18037675651)
  • 相关阅读:
    C标准中的一些预定义宏
    将智能设备连接到开发计算机上
    ATX电源短接哪两个引脚可以开机
    Visual C++ 编译器选项
    Visual C++ 链接器选项
    vs 2005 中的单元测试的生命周期
    .net study link
    C#的多线程机制探索(http://diy8.blog.sohu.com/741499.html)
    ![网页设计与编程] (小心眼花!)(http://www.fwcn.com/Bbs/viewthread.php?tid=10521)
    多个线程可能会试图同时访问某个对象。在多个线程同时争相访问某个对象的同时,如果一个线程修改了资源,有些线程可能会收到无效状态。例如,如果某个线程读取对象的字段,同时另一线程正在修改该字段,则第一个线程可能会收到无效的字段状态。这种情况称为竞用情况。
  • 原文地址:https://www.cnblogs.com/qgbo/p/14646177.html
Copyright © 2011-2022 走看看