您的位置:首页 > 技术中心 > 运维 >

nginx怎么配置伪静态和适配客户端

时间:2023-05-16 07:12

后端用的thinkphp3.2.3框架,如果您是其他的语言或者,注意适当修改下

server {    listen    80;    server_name www.morgen.club;    #charset koi8-r;        #access_log logs/host.access.log main;

网站根目录

location / {      root  html;      index index.html index.htm;      #设置访问设备      set $source_device 'index';      #判断为手机客户端或ipad      if ($http_user_agent ~* (mobile|nokia|iphone|ipad|android|samsung|htc|blackberry)) {        set $source_device 'phone';      }      #根目录      if ($request_uri ~* ^/$){        rewrite ^(.*)$ /index.php?s=/home/$source_device/index.html last;        break;      }      #电脑首页      if ($request_uri ~* ^/home/index/index.html$) {        rewrite ^/home/index/index.html$ /web/ permanent;        break;      }      #电脑首页分页      if ($request_uri ~* ^/home/index/index/page/(d*).html$) {        rewrite ^/home/index/index/page/(d*).html$ /web/pages/$1/ permanent;        break;      }      #电脑首页分类首页      if ($request_uri ~* ^/home/index/index/cate/(d*).html$) {        rewrite ^/home/index/index/cate/(d*).html$ /web/cates/$1/ permanent;        break;      }      #电脑首页分类分页      if ($request_uri ~* ^/home/index/index/cate/(d*)/page/(d*).html$) {        rewrite ^/home/index/index/cate/(d*)/page/(d*).html$ /web/cates/$1/pages/$2/ permanent;        break;      }      #电脑首页搜索      if ($request_uri ~* ^/home/index/index.html(.*)) {        rewrite ^/home/index/index.html(.*) /web/search?$query_string permanent;        break;      }      #电脑书籍页面      if ($request_uri ~* ^/home/index/books/book/(d*).html$) {        rewrite ^/home/index/books/book/(d*).html$ /web/books/$1/ permanent;        break;      }      #电脑章节页面      if ($request_uri ~* ^/home/index/contents/books/(d*)/chapters/(d*).html$) {        rewrite ^/home/index/contents/books/(d*)/chapters/(d*).html$ /web/books/$1/chapters/$2/ permanent;        break;      }      #手机首页      if ($request_uri ~* ^/home/phone/index.html$) {        rewrite ^/home/phone/index.html$ /phone/ last;        break;      }      #手机首页分页      if ($request_uri ~* ^/home/phone/index/page/(d*)(.*)$) {        rewrite ^/home/phone/index/page/(d*).html /phone/pages/$1/ permanent;        break;      }      #手机首页分类首页      if ($request_uri ~* ^/home/phone/index/cate/(d*).html$) {        rewrite ^/home/phone/index/cate/(d*).html$ /phone/cates/$1/ permanent;        break;      }      #手机首页分类分页      if ($request_uri ~* ^/home/phone/index/cate/(d*)/page/(d*).html$) {        rewrite ^/home/phone/index/cate/(d*)/page/(d*).html$ /phone/cates/$1/pages/$2/ permanent;        break;      }      #手机首页搜索      if ($request_uri ~* ^/home/phone/index.html?(.*)) {        rewrite ^/home/phone/index.html(.*) /phone/index.html$1 permanent;        break;      }      #手机书籍页面      if ($request_uri ~* ^/home/phone/books/book/(d*).html$) {        rewrite ^/home/phone/books/book/(d*).html$ /phone/books/$1/ permanent;        break;      }      #手机章节页面      if ($request_uri ~* ^/home/phone/contents/books/(d*)/chapters/(d*).html$) {        rewrite ^/home/phone/contents/books/(d*)/chapters/(d*).html$ /phone/books/$1/chapters/$2/ permanent;        break;      }            if ($request_uri ~* ^/home/book/(.*)$) {        rewrite ^(.*)$ /index.php?s=$1 last;        break;      }      if (!-e $request_filename) {        return 404;      }    }

电脑浏览器端

location /web {      root html;      index index.html index.htm;      #如果设备为手机或ipad      if ($http_user_agent ~* (mobile|nokia|iphone|ipad|android|samsung|htc|blackberry)) {        rewrite ^/web(.*) /phone$1 permanent;      }        #电脑首页搜索        if ($request_uri ~ ^/web/search(.*)$) {          rewrite ^(.*) /index.php?s=/home/index/index.html last;          break;        }        #电脑首页        set $index false;        if ($request_uri ~* ^/web$) {          set $index true;        }        if ($request_uri ~* ^/web/$) {          set $index true;        }        if ($index = true){          rewrite ^/web(.*) /index.php?s=/home/index/index.html last;          break;        }        #电脑首页分页        set $index_page false;        if ($request_uri ~* ^/web/pages/(d*)$) {          set $index_page true;        }        if ($request_uri ~* ^/web/pages/(d*)/$) {          set $index_page true;        }        if ($index_page = true){          rewrite ^/web/pages/(d*)(.*) /index.php?s=/home/index/index/page/$1.html last;          break;        }        #电脑分类首页        set $cate false;        if ($request_uri ~* ^/web/cates/(d*)$) {          set $cate true;        }        if ($request_uri ~* ^/web/cates/(d*)/$) {          set $cate true;        }        if ($cate = true){          rewrite ^/web/cates/(d*)(.*) /index.php?s=/home/index/index/cate/$1.html last;          break;        }        #电脑分类分页        set $cate_page false;        if ($request_uri ~* ^/web/cates/(d*)/pages/(d*)$) {          set $cate_page true;        }        if ($request_uri ~* ^/web/cates/(d*)/pages/(d*)/$) {          set $cate_page true;        }        if ($cate_page = true){          rewrite ^/web/cates/(d*)/pages/(d*)(.*) /index.php?s=/home/index/index/cate/$1/page/$2.html last;          break;        }                #电脑书籍页面        set $book false;        if ($request_uri ~* ^/web/books/(d*)$) {          set $book true;        }        if ($request_uri ~* ^/web/books/(d*)/$) {          set $book true;        }        if ($book = true){          rewrite ^/web/books/(d*)(.*) /index.php?s=/home/index/books/book/$1.html last;          break;        }        #电脑章节页面        set $chapter false;        if ($request_uri ~* ^/web/books/(d*)/chapters/(.*)$) {          set $chapter true;        }        if ($request_uri ~* ^/web/books/(d*)/chapters/(.*)/$) {          set $chapter true;        }        if ($chapter = true){          rewrite ^/web/books/(d*)/chapters/(.*)/ /index.php?s=/home/index/contents/books/$1/chapters/$2.html last;          break;        }        if (!-e $request_filename) {          return 404;        }    }

手机和平板端

location /phone {      root html;      index index.html index.htm;      #如果设备不是手机或ipad      if ($http_user_agent !~* (mobile|nokia|iphone|ipad|android|samsung|htc|blackberry)) {        rewrite ^/phone(.*) /web$1 permanent;      }        #电脑首页搜索        if ($request_uri ~ ^/phone/search(.*)$) {          rewrite ^(.*) /index.php?s=/home/phone/index.html last;          break;        }        #手机首页        set $index false;        if ($request_uri ~* ^/phone$) {          set $index true;        }        if ($request_uri ~* ^/phone/$) {          set $index true;        }        if ($index = true){          rewrite ^/phone(.*) /index.php?s=/home/phone/index.html last;          break;        }        #手机首页分页        set $index_page false;        if ($request_uri ~* ^/phone/pages/(d*)$) {          set $index_page true;        }        if ($request_uri ~* ^/phone/pages/(d*)/$) {          set $index_page true;        }        if ($index_page = true){          rewrite ^/phone/pages/(d*)(.*) /index.php?s=/home/phone/index/page/$1.html last;          break;        }        #手机分类首页        set $cate false;        if ($request_uri ~* ^/phone/cates/(d*)$) {          set $cate true;        }        if ($request_uri ~* ^/phone/cates/(d*)/$) {          set $cate true;        }        if ($cate = true){          rewrite ^/phone/cates/(d*) /index.php?s=/home/phone/index/cate/$1.html last;          break;        }        #手机分类分页        set $cate_page false;        if ($request_uri ~* ^/phone/cates/(d*)/pages/(d*)$) {          set $cate_page true;        }        if ($request_uri ~* ^/phone/cates/(d*)/pages/(d*)/$) {          set $cate_page true;        }        if ($cate_page = true){          rewrite ^/phone/cates/(d*)/pages/(d*)(.*) /index.php?s=/home/phone/index/cate/$1/page/$2.html last;          break;        }        #手机书籍页面        set $book false;        if ($request_uri ~* ^/phone/books/(d*)$) {          set $book true;        }        if ($request_uri ~* ^/phone/books/(d*)/$) {          set $book true;        }        if ($book = true){          rewrite ^/phone/books/(d*)(.*) /index.php?s=/home/phone/books/book/$1.html last;          break;        }        #手机书籍分页页面        set $book false;        if ($request_uri ~* ^/phone/books/(d*)/pages/(d*)$) {          set $book true;        }        if ($request_uri ~* ^/phone/books/(d*)/pages/(d*)/$) {          set $book true;        }        if ($book = true){          rewrite ^/phone/books/(d*)/pages/(d*) /index.php?s=/home/phone/books/book/$1/page/$2.html last;          break;        }        #手机章节页面        set $chapter false;        if ($request_uri ~* ^/phone/books/(d*)/chapters/(.*)$) {          set $chapter true;        }        if ($request_uri ~* ^/phone/books/(d*)/chapters/(.*)/$) {          set $chapter true;        }        if ($chapter = true){          rewrite ^/phone/books/(d*)/chapters/(.*)/ /index.php?s=/home/phone/contents/books/$1/chapters/$2.html last;          break;        }        if (!-e $request_filename) {          return 404;        }    }    location ~ .xml(.*) {      root html/ttt/;    }     location ~ .txt(.*) {      root html/ttt/;    }    location ~ .gif(.*) {      root html/ttt/;    }    location ~ .jpg(.*) {      root html/ttt/;    }    location ~ .css(.*) {      root html/ttt/;    }    location ~ .js$ {      root html/ttt/;    }    location ~ .php$ {      root html/ttt;      fastcgi_pass 127.0.0.1:9000;      fastcgi_index index.php;      fastcgi_buffers 8 256k;      fastcgi_connect_timeout 300s;      fastcgi_send_timeout 300s;      fastcgi_read_timeout 300s;      fastcgi_param script_filename $document_root$fastcgi_script_name;      include fastcgi_params;    }  }

以上就是nginx怎么配置伪静态和适配客户端的详细内容,更多请关注Gxl网其它相关文章!

热门排行

今日推荐

热门手游