[转帖]NGINX的一些SEO优化常用配置

nginx,一些,seo,优化,常用,配置 · 浏览次数 : 0

小编点评

**官方文档链接:** - ngx_http_core_modul - ngx_http_rewrite_modul - ngx_http_proxy_modul - ngx_http_upstream_module **配置方法主域跳转www域官方推荐分两个server,不推荐用匹配host然后转发的方式server { listen 80; #此处填写主域 server_name qbsmovie.com; return 301 http://www.$host$request_uri;} **配置方法说明:** - 每个server使用不同的server_name来指定网站主域。 - 每个server使用if判断来检查请求URI,并根据条件设置相应的变量,例如$flag_jianzhan_root。 - 每个server使用if判断来检查请求URI,并根据条件设置相应的变量,例如$flag_jianzhan_root。 - 每个server使用if判断来检查请求URI,并根据条件设置相应的变量,例如$flag_jianzhan_root。 - 如果请求URI匹配/sitemap.xml,则使用location转发将请求转发到www.newjianzhan.com。 - 如果请求URI匹配/sitemap.xml,则使用proxy_pass将请求转发到www.newjianzhan.com。 - 如果请求URI包含参数,则使用location转发将请求转发到www.newjianzhan.com。 - 如果请求URI匹配/mobile/p([0-9]{1,})/news_([0-9]{1,}).html1&NewsID=$2;,则使用location转发将请求转发到www.newjianzhan.com。

正文

https://www.jianshu.com/p/e55073e5ebc7

 

官方文档:http://nginx.org/en/docs/

常用模块:

内置参数查询:

Embedded Variables

系统的基础使用教程就不再记录了,只是记录一些用到的配置方法

主域跳转www域

官方推荐分两个server,不推荐用匹配host然后转发的方式

server {
    listen       80;
    #此处填写主域
    server_name  qbsmovie.com;
    return       301 http://www.$host$request_uri;
}

server {
    listen       80;
    #此处填写WWW域
    server_name  www.qbsmovie.com;

    //网站主配置
    .....
}

多个条件的if判断

nginx没有and条件和else,注意语法比较严格,该有空格的地方必须要有空格

#特定页面的主页301跳转
set $flag_jianzhan_root 0;
        if ( $host = 'jianzhan.fxt.cn' ){
                set $flag_jianzhan_root "${flag_jianzhan_root}1";
        }
        if ( $request_uri = '/' ){
                set $flag_jianzhan_root "${flag_jianzhan_root}2";
        }
        if ( $flag_jianzhan_root = '012' ){
                return 301 http://www.fxt.cn;
        }

带参数请求转发

被转发的服务器需要接收转发前的参数

location /sitemap.xml {

                rewrite    /sitemap.xml /api/sitemap/pc?host=$host break;

                proxy_pass http://www.newjianzhan.com;

}

location /sitemap.xml {

        proxy_pass [http://www.newjianzhan.com;](http://www.newjianzhan.com%3B/)

       #通过设置header来传递是更好的解决办法

        proxy_set_header  Host $host;

}

"/mobile/p([0-9]{1,})/news_([0-9]{1,}).html" /mobile/index.php?page_id=1&NewsID=$2;

 

**指定404页面**

error_page 404 /404.html;
···

 

gzip配置

https://nginx.org/en/docs/http/ngx_http_gzip_module.html

http://www.cnblogs.com/mitang/p/4477220.html

百度seo要求:修改vary的header值

#gzip_vary on;   这一行注释掉或者改成off获取不写,换成下面那行。这个配置项添加的vary头不符合要求。
#add_header Vary "Accept-Encoding, User-Agent"; 这个header用于百度移动端抓取,配合meta标签applicable-device使用

参考文章:https://ziyuan.baidu.com/college/articleinfo?id=717

配置默认服务器

默认按照server的加载顺序,第一个加载的为默认

手动指定的方法:

listen 80 default_server;

和server_name ;这个写法没有关系,'' 只是作为一个和业务域名无关的请求回收服务而已(通俗理解就是不限制传入的域名或IP),如果我们线上的业务都是明确的业务域名访问,那泛解析造成的一些非业务域名或ip访问都会被这个 sever 回收处理。

判断文件是否存在

if ( -e /www/test.php ) {
   ...
}

正则替换

#host为www.test.com,$prefix可以赋值为test_com_
if ( $host ~ ^www\.(/w)\.(/w)$ ) {
   $perfix = $1_$2_;
}

php fast_cgi传参

location ~ \ .php$ {
    ...
    fast_cgi_params DB_PREFIX $prefix;
    ...
}

此处的DB_PREFIX参数可以作为系统的env变量使用。

与[转帖]NGINX的一些SEO优化常用配置相似的内容:

[转帖]NGINX的一些SEO优化常用配置

https://www.jianshu.com/p/e55073e5ebc7 官方文档:http://nginx.org/en/docs/ 常用模块: ngx_http_core_module ngx_http_rewrite_module ngx_http_proxy_module ngx_htt

[转帖]Nginx HTTP模块

https://www.cnblogs.com/lizexiong/p/15039009.html 导航: 这里将Nginx的一些配置进行整合。根据导航比较容易找到对应的文档。资料来自于weixueyuan 1.Nginx核心配置详解 2.Nginx HTTP模块 3.Nginx搭建 Web服务 4

[转帖]Nginx核心配置详解

https://www.cnblogs.com/lizexiong/p/15036707.html 导航: 这里将Nginx的一些配置进行整合。根据导航比较容易找到对应的文档。资料来自于weixueyuan 1.Nginx核心配置详解 2.Nginx HTTP模块 3.Nginx搭建 Web服务 4

[转帖]Nginx代理服务器

https://www.cnblogs.com/lizexiong/p/15045187.html 导航: 这里将Nginx的一些配置进行整合。根据导航比较容易找到对应的文档。资料来自于weixueyuan 1.Nginx核心配置详解 2.Nginx HTTP模块 3.Nginx搭建 Web服务 4

[转帖]Nginx/LVS/HAProxy负载均衡软件的优缺点详解

转载:http://www.ha97.com/5646.html PS:Nginx/LVS/HAProxy是目前使用最广泛的三种负载均衡软件,本人都在多个项目中实施过,参考了一些资料,结合自己的一些使用经验,总结一下。 一般对负载均衡的使用是随着网站规模的提升根据不同的阶段来使用不同的技术。具体的应

[转帖]k8s nginx-ingress上的配置优化

https://cloud.tencent.com/developer/article/1932188?areaSource=&traceId= 自建K8s上,如果部署了Nginx-Ingress,通常一些默认的参数有些可能需要优化下以便提升它的性能(阿里云之类的云厂商提供的Ingress是优化过的

[转帖]Nginx Ingress 高并发实践

概述 Nginx Ingress Controller 基于 Nginx 实现了 Kubernetes Ingress API,Nginx 是公认的高性能网关,但如果不对其进行一些参数调优,就不能充分发挥出高性能的优势。之前我们在 Nginx Ingress on TKE 部署最佳实践 一文中讲了

[转帖]Nginx禁止ip访问或非法域名访问

https://www.jb51.net/article/243661.htm 这篇文章主要介绍了Nginx禁止ip访问或非法域名访问,需要的朋友可以参考下 在生产环境中,为了网站的安全访问,需要Nginx禁止一些非法访问,如恶意域名解析,直接使用IP访问网站。下面记录一些常用的配置示例: 1)禁止

【转帖】nginx变量使用方法详解-3

https://www.diewufeiyang.com/post/577.html 也有一些内建变量是支持改写的,其中一个例子是 $args. 这个变量在读取时返回当前请求的 URL 参数串(即请求 URL 中问号后面的部分,如果有的话 ),而在赋值时可以直接修改参数串。我们来看一个例子: Bas

[转帖]Nginx 服务并发过10万的Linux内核优化配置

https://www.shuzhiduo.com/A/6pdDejeXzw/ 以下Linux 系统内核优化配置均经在线业务系统测试,服务器运行状态良好,用了一些时间整理,现和大家分享一下,如有那位高人看到配置上有问题,请给与指出! # Controls the use of TCP syncook