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

福安网站开发网站内容建设要求age06

福安网站开发,网站内容建设要求age06,wordpress文章显示小时分钟,今天的最新新闻内容十二 nginx 地址重写 rewrite 1 什么是Rewrite Rewrite对称URL Rewrite#xff0c;即URL重写#xff0c;就是把传入Web的请求重定向到其他URL的过程。URL Rewrite最常见的应用是URL伪静态化#xff0c;是将动态页面显示为静态页面方式的一种技术。比如 http://www.123.com…十二 nginx 地址重写 rewrite 1 什么是Rewrite Rewrite对称URL Rewrite即URL重写就是把传入Web的请求重定向到其他URL的过程。URL Rewrite最常见的应用是URL伪静态化是将动态页面显示为静态页面方式的一种技术。比如 http://www.123.com/news/index.php?id123 使用URLRewrite 转换后可以显示为 http://www.123 .com/news/123.html对于追求完美主义的网站设计师就算是网页的地址也希望看起来尽量简洁明快。 理论上搜索引擎更喜欢静态页面形式的网页搜索引擎对静态页面的评分一般要高于动态页面。所以UrlRewrite可以让我们网站的网页更容易被搜索引擎所收录。从安全角度上讲如果在URL中暴露太多的参数无疑会造成一定量的信息泄漏可能会被一些黑客 利用对你的系统造成一定的破坏所以静态化的URL地址可以给我们带来更高的安全性。实现网站地址跳转例如用户访问360buy.com将其跳转到jd.com。例如当用户访问tianyun.com的 80端口时将其跳转到443端口。 2 Rewrite 相关指令 Nginx Rewrite 相关指令有 if 、rewrite、set、return 2.1、if 语句 应用环境 serverlocation语法 if (condition) { … } if 可以支持如下条件判断匹配符号 ~ 正则匹配 (区分大小写) ~* 正则匹配 (不区分大小写) !~ 正则不匹配 (区分大小写) !~* 正则不匹配 (不区分大小写) -f 和!-f 用来判断是否存在文件 -d 和!-d 用来判断是否存在目录 -e 和!-e 用来判断是否存在文件或目录 -x 和!-x 用来判断文件是否可执行在匹配过程中可以引用一些Nginx的全局变量 $args 请求中的参数; $document_root 针对当前请求的根路径设置值; $host 请求信息中的Host如果请求中没有Host行则等于设置的服务器名; $limit_rate 对连接速率的限制; $request_method 请求的方法比如GET、POST等; $remote_addr 客户端地址; $remote_port 客户端端口号; $remote_user 客户端用户名认证用; $request_filename 当前请求的文件路径名带网站的主目录/usr/local/nginx/html/images/a.jpg $request_uri 当前请求的文件路径名不带网站的主目录/images/a.jpg $query_string 与$args相同; $scheme 用的协议比如http或者是https $server_protocol 请求的协议版本HTTP/1.0或HTTP/1.1; $server_addr 服务器地址如果没有用listen指明服务器地址使用这个变量将发起一次系统调用以取得地址(造成资源浪费); $server_name 请求到达的服务器名; $document_uri 与$uri一样URI地址; $server_port 请求到达的服务器端口号;2.2、Rewrite flag ​ rewrite 指令根据表达式来重定向URI或者修改字符串。 ​ 可以应用于server,location, if环境下每行rewrite指令最后跟一个flag标记支持的flag标记有 last 相当于Apache里的[L]标记表示完成rewrite。默认为last。 break 本条规则匹配完成后终止匹配不再匹配后面的规则 redirect 返回302临时重定向浏览器地址会显示跳转后的URL地址 permanent 返回301永久重定向浏览器地址会显示跳转后URL地址​ redirect 和 permanent 区别则是返回的不同方式的重定向对于客户端来说一般状态下是没有区别的。而对于搜索引擎相对来说301的重定向更加友好如果我们把一个地址采用301跳转方式跳转的话搜索引擎会把老地址的相关信息带到新地址同时在搜索引擎索引库中彻底废弃掉原先的老地址。使用302重定向时搜索引擎(特别是google)有时会查看跳转前后哪个网址更直观然后决定显示哪个如果它觉的跳转前的URL更好的话也许地址栏不会更改那么很有可能出现URL劫持的现像。在做URI重写时有时会发现URI中含有相关参数如果需要将这些参数保存下来并且在重写过程中重新引用可以用到 () 和 $N 的方式来解决。 2.3、Rewrite匹配参考示例 # 本地解析host文件 例1 # http://www.testpm.com/a/1.html http://www.testpm.com/b/2.htmllocation /a {root /html;index 1.html index.htm;rewrite .* /b/2.html permanent;}location /b {root /html;index 2.html index.htm;}例2 # http://www.testpm.com/2019/a/1.html http://www.testpm.com/2018/a/1.htmllocation /2019/a {root /var/www/html;index 1.html index.hml;rewrite ^/2019/(.*)$ /2018/$1 permanent;}location /2018/a {root /var/www/html;index 1.html index.htl;}例3 # http://www.lanfw1.com/a/1.html http://jd.comlocation /a {root /html;if ($host ~* www.qf.com ) {rewrite .* http://jd.com permanent;}}例4 # http://www.lanfw1.com/a/1.html http://jd.com/a/1.html location /a {root /html;if ( $host ~* testpm.com ){rewrite .* http://jd.com$request_uri permanent;}}例5: 在访问目录后添加/ (如果目录后已有/则不加/) # http://www.lanfw1.com/a/b/c # $1: /a/b/ # $2: c # http://$host$1$2$3/ location /a/b/c {if (-d $request_filename) {rewrite ^(.*)([^/])$ http://$host$1$2/ permanent;}}例6 # http://www.lanfw.com/login/lanfw.html http://www.lanfw.com/reg/login.html?userlanfwlocation /login {root /usr/share/nginx/html;rewrite ^/login/(.*)\.html$ http://$host/reg/login.html?user$1;}location /reg {root /usr/share/nginx/html;index login.html;}例7 #http://www.lanfw.com/qf/11-22-33/1.html http://www.lanfw.com/qf/11/22/33/1.html location /qf {rewrite ^/qf/([0-9])-([0-9])-([0-9])(.*)$ /qf/$1/$2/$3$4 permanent;}location /qf/11/22/33 {root /html;index 1.html;}2.4、set 指令 set 指令是用于定义一个变量并且赋值 应用环境: server,location,if应用示例 例8 #http://alice.testpm.com http://www.testpm.com/alice #http://jack.testpm.com http://www.testpm.com/jack[rootnginx-server conf.d]# cd /usr/share/nginx/html/ [rootnginx-server html]# mkdir jack alice [rootnginx-server html]# echo jack.. jack/index.html [rootnginx-server html]# echo alice.. alice/index.htmla. DNS实现泛解析 * IN A 网站IP # 或者本地解析域名host文件 10.0.105.202 www.testpm.com 10.0.105.202 alice.testpm.com 10.0.105.202 jack.testpm.com# 编辑配置文件: server {listen 80;server_name www.testpm.com;location / {root /usr/share/nginx/html;index index.html index.htm;if ( $host ~* ^www.testpm.com$) {break;}if ( $host ~* ^(.*)\.testpm\.com$ ) {set $user $1;rewrite .* http://www.testpm.com/$user permanent;}}location /jack {root /usr/share/nginx/html;index index.html index.hml;}location /alice {root /usr/share/nginx/html;index index.html index.hml;} }2.5、return 指令 return 指令用于返回状态码给客户端 server,location,if应用示例: 例9如果访问的.sh结尾的文件则返回403操作拒绝错误 server {listen 80;server_name www.testpm.cn;#access_log /var/log/nginx/http_access.log main;location / {root /usr/share/nginx/html;index index.html index.htm;}location ~* \.sh$ {return 403;} }例10 80 443 80转443端口 server {listen 80;server_name www.testpm.cn;access_log /var/log/nginx/http_access.log main;return 301 https://www.testpm.cn$request_uri; }server {listen 443 ssl;server_name www.testpm.cn;access_log /var/log/nginx/https_access.log main;#ssl on;ssl_certificate /etc/nginx/cert/2447549_www.testpm.cn.pem;ssl_certificate_key /etc/nginx/cert/2447549_www.testpm.cn.key;ssl_session_timeout 5m;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers ALL:!ADH:!EXPORT56:RC4RSA:HIGH:MEDIUM:LOW:SSLv2:EXP;ssl_prefer_server_ciphers on;location / {root /usr/share/nginx/html;index index.html index.htm;} }[rootnginx-server ~]# curl -I http://www.testpm.cn HTTP/1.1 301 Moved Permanently Server: nginx/1.16.0 Date: Wed, 03 Jul 2019 13:52:30 GMT Content-Type: text/html Content-Length: 169 Connection: keep-alive Location: https://www.testpm.cn/3 last break详解 [rootlocalhost test]# cat /etc/nginx/conf.d/last_break.conf server {listen 80;server_name localhost;access_log /var/log/nginx/last.access.log main;location / {root /usr/share/nginx/html;index index.html index.htm;}location /break/ {root /usr/share/nginx/html;rewrite .* /test/break.html break;}location /last/ {root /usr/share/nginx/html;rewrite .* /test/last.html last;}location /test/ {root /usr/share/nginx/html;rewrite .* /test/test.html break;}} [rootlocalhost conf.d]# cd /usr/share/nginx/html/ [rootlocalhost html]# mkdir test [rootlocalhost html]# echo last test/last.html [rootlocalhost html]# echo break test/break.html [rootlocalhost html]# echo test test/test.htmlhttp://10.0.105.196/break/break.html http://10.0.105.196/last/last.html​ 注意 last 标记在本条 rewrite 规则执行完后会对其所在的 server { … } 标签重新发起请求;break 标记则在本条规则匹配完成后停止匹配不再做后续的匹配使用 alias 指令时必须使用 last使用 proxy_pass 指令时,则必须使用break。 4 Nginx 的 https ( rewrite ) server {listen 80;server_name *.vip9999.top vip9999.top;if ($host ~* ^www.vip9999.top$|^vip9999.top$ ) {return 301 https://www.vip9999.top$request_uri;}if ($host ~* ^(.*).vip9999.top$ ) {set $user $1;return 301 https://www.vip9999.top/$user;}}# Settings for a TLS enabled server.server {listen 443 ssl;server_name www.vip9999.top;location / {root /usr/share/nginx/html;index index.php index.html;}#pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000location ~ \.php$ {root /usr/share/nginx/html;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}ssl on;ssl_certificate cert/214025315060640.pem;ssl_certificate_key cert/214025315060640.key;ssl_session_cache shared:SSL:1m;ssl_session_timeout 10m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers on;}5 Apache 的 https ( rewrite ) [rootlocalhost ~]# yum -y install httpd mod_ssl [rootlocalhost ~]# vim /etc/httpd/conf.d/vip9999.conf例4
http://www.w-s-a.com/news/873045/

相关文章:

  • 网站开发制作公司罗湖在线
  • 做网站银川潍坊网络科技有限公司
  • 南宁企业网站建站模板盐田高端网站建设
  • 深圳市建设局网站张局北京档案馆网站建设
  • 运动健身型网站开发网站备案掉了什么原因
  • 网站开发的前后端是什么注册网站多少钱一年
  • 彩票网站建设需要什么网站未备案被阻断怎么做
  • wordpress 版权声明网站优化排名哪家性价比高
  • dedecms网站关键词外包做网站平台 一分钟
  • 酒网站建设游戏分类网站怎么做
  • 仿牌网站安全北京大良网站建设
  • ps中怎样做网站轮播图片吉林省网站建设公司
  • 广西网站建设-好发信息网温江做网站哪家好
  • 网站建设属于什么职位类别南京哪个网站建设比较好
  • wdcp 网站备份东莞网站建设五金建材
  • 天津制作网站的公司电话wordpress架设进出销
  • tomcat做静态网站prestashop和wordpress
  • 上海响应式建站wap网站微信分享代码
  • 四川建筑人才招聘网南昌网站优化
  • 南充网站建设制作重庆有的设计网站大全
  • 深圳沙井做网站公司网站搭建谷歌seo
  • 学校资源网站的建设方案山西省住房城乡建设厅网站
  • 医疗行业网站建设深圳网络科技公司排名
  • 企业形象型网站建设wordpress chess
  • 网站的域名起什么好处罗湖网站建设公司乐云seo
  • 网站的服务器在哪里sem推广软件选哪家
  • 科技网站欣赏婚庆公司经营范围
  • 网站后台管理系统php校园网站建设意见表填写
  • 网站建设问题调查常州百度推广代理公司
  • net网站开发学习谷歌优化培训