当前位置: 首页 > news >正文

山西网站建设服务搜索百度

山西网站建设服务,搜索百度,网站建设流程的怎样的,可以自己做免费网站吗项目背景: 将域名请求从默认的80端口转发到443 ssl。本项目特殊之处是一个端口监听多个域名,某些域名还有跳转到特定的地址。 普通情况: server { listen 80; #默认的80端口,非…

项目背景:

        将域名请求从默认的80端口转发到443 ssl。本项目特殊之处是一个端口监听多个域名,某些域名还有跳转到特定的地址。

普通情况:

        server {
        listen       80;                                    #默认的80端口,非加密通信
        server_name xxx.org.cn;                   #监听的请求域名

        rewrite ^(.*)$ https://${server_name}$1 permanent;   
            }

说明:
rewrite 为固定关键字,表示开始进行rewrite匹配规则。
regex 为 ^/(.*)。 这是一个正则表达式,匹配完整的域名和后面的路径地址。
replacement就是 http://xxx.org.cn/$1 这块了,其中$1是取regex部分()里面的内容。如果匹配成功后跳转到的URL。
flag 就是 permanent,代表永久重定向的含义,即跳转到 http://xxx.org.cn/$1 地址上。

本项目情况:

        Nginx默认的80端口监听多个域名。

        废话不多数,直接贴配置。

 server {
       listen    80; 

        # 同时监听多个域名

       server_name  a.stm.cn;
       server_name  b.stm.cn;
       server_name  c.stm.cn;
       # 实现访问http://a.sdstm.cn 不带URI
       # 自动跳转https://a.sdstm.cn/main/

        # 因为Nginx不支持if判断嵌套,也不支持逻辑或与,设置标识符
       set $flag 0;

        #  判断请求的host,匹配则修改标识符
       if ($host = 'a.sdstm.cn' ){
           set $flag "${flag}1";
       }

        # 判断请求的当前URI,匹配则修改标识符
       if ($document_uri = '/'){
           set $flag "${flag}1";
       }

        # 判断当前标识符的值,匹配则跳转到对应地址
       if ( $flag = '011' ){
          rewrite ^(.*)$ https://$host/main permanent;  
       }

        # 匹配以“stm.cn”为后缀的域名请求,匹配则跳转到对应的https地址
       if ( $host ~ '(stm.cn)$' ){
            rewrite ^(.*)$ https://$host$1 permanent;          #跳转到对应的$host地址
            #rewrite ^(.*)$ https://${server_name}$1 permanent;  #全部跳转到域名a.stm.cn
       }

知识拓展

if (condition) {// ....
}

该指令用来支持条件判断的,并且根据条件判断结果来选择不同的nginx的配置,我们可以在server块或location块中配置该指令。

condition 是布尔值 true/false的含义。

Rewrite 指令可用的全局变量如下:

1. $args: 该变量中存放了请求URL中的请求指令。比如 http://127.0.0.1:3001?arg1=value1&arg2=value2 中的
"arg1=value1&arg2=value2"。
2. $content_length: 该变量中存放了请求头中的Content-length字段。
3. $content_type: 该变量中存放了请求头中的 Content-type字段。
4. $document_root: 该变量中存放了针对当前请求的根路径。
5. $document_uri: 该变量中存放了请求的当前URI, 但是不包括请求指令。比如 http://xxx.abc.com/home/1?arg1=value1&
arg2=value2; 中的 "/home/1"
6. $host: 变量中存放了请求的URL中的主机部分字段,比如http://xxx.abc.com:8080/home中的 xxx.abc.com.
7. $http_host: 该变量与$host唯一区别带有端口号:比如上面的是 xxx.abc.com:8080
8. $http_user_agent: 变量中存放客户端的代理信息。
9. $http_cookie, 该变量中存放客户端的cookie信息。
10. $remote_addr 该变量中存放客户端的地址。
11. $remote_port 该变量中存放了客户端与服务器建立连接的端口号。
12. $remote_user 变量中存放客户端的用户名。
13. $request_body_file 变量中存放了发给后端服务器的本地文件资源的名称
14. $request_method 变量中存放了客户端的请求方式,比如 'GET'、'POST'等。
15. $request_filename 变量中存放了当前请求的资源文件的路径名。
16. $request_uri 变量中存放了当前请求的URI,并且带请求指令。
17. $query_string 和变量$args含义一样。
18. $scheme 变量中存放了客户端请求使用的协议,比如 'http', 'https'等。
19. $server_protocol 变量中存放了客户端请求协议的版本, 比如 'HTTP/1.0'、'HTTP/1.1' 等。
..... 等等

'=' 表示值相同

'~' 表示匹配过程中对大小写敏感。
'~*' 表示匹配过程中对大小写不敏感。
'!~' 如果 '~' 匹配失败时,那么该条件就为true。
'!~*' 如果 '~*' 匹配失败时,那么该条件就为true

'-f' 如果请求的文件存在,那么该条件为true。
'!-f' 如果该文件的目录存在,该文件不存在,那么返回true。如果该文件和目录都不存在,则为false。如果请求的目录不存在,请求的文件存在,也为false。

if (-f $request_filename) {// 判断请求的文件是否存在
}if (!-f $request_filename) {// 判断请求的文件是否不存在
}

 '-d',如果请求的目录存在,则返回true。否则返回false。
 '!-d', 如果请求的目录不存在,但是该请求的上级目录存在,则返回true。如果该上级目录不存在,则返回false

http://www.15wanjia.com/news/43512.html

相关文章:

  • 长沙网站制作好公司千锋教育培训收费一览表
  • 清溪网站建设seo课程总结
  • 在线玩网页游戏h5网站大全百度学术论文官网入口
  • 做一个官方网站多少钱百度关键词排名联系方式
  • 怎么把别人做的网站变成自己的郑州网络营销公司哪家好
  • 电商网站 技术sem是什么职业岗位
  • 安庆网站建设为b2b平台是什么意思啊
  • wordpress多站点互相链接seo关键词排名网络公司
  • 移动网站功能爱站网关键词长尾挖掘工具
  • 珠海网站建设陈玉铭如何在百度提交自己的网站
  • 曹县网站建设公司在线培训系统平台
  • 网页制作和网站开发实验报告做网站需要准备什么
  • 网站单页在线制作软件外包网站
  • 太原seo公司网站搜索引擎优化中的步骤包括
  • 网站改版 被k武汉seo服务
  • 学做网站的视频电商运营公司简介
  • 义乌有什么网络公司360优化大师最新版的功能
  • 阳泉做网站南平seo
  • 公安部网站备案网址seo技术培训教程视频
  • 做批发服装的网站凡科小程序
  • 二手车辆交易网站如何做网站搜什么关键词
  • 做外汇 虚拟网站长沙seo关键词
  • 做网站满屏的照片尺寸是多少做网站seo怎么赚钱
  • 怎么做网站报价表网站快速优化排名app
  • 网站建设案例教程视频seo网站排名助手
  • 做电商需要准备什么网站优化公司推荐
  • 在线购物商城seo快速排名软件
  • 做网站的经历感想广州seo成功案例
  • 政务门户网站建设方案新媒体运营岗位职责
  • 学校网站制作公司最新黑帽seo教程