WordPress优化域名输入体验

来自:互联网
时间:2020-03-21
阅读:
免费资源网 - https://freexyz.cn/

直观讲就是让域名统一指向,我发现很多站点现在都存在以下几方面问题:

  • 域名不带www和带www都可以方向到相同的内容;
  • 域名用http或https都可访问到相同的内容;
  • 域名不带www与带www两者只能一种能正常访问。

那么问题来了,这样的体验有些站长或优化人员会觉得是方便用户,不用输www或输入www都到达同一目标,这样不是更好吗?用户输入的少了,体验更好了。没错,这个理解是对的,但你做的还不够。我们应避免如下问题:

  • 不改变用户任何输入体验的前提下,进行服务处理;
  • 用户如何输入,服务始终自动补全或响应标准指向;
  • 不仅要让输入体验提升,还要让搜索引擎更懂你;

理想的域名输入体验是怎样的?

  • 输入www或不输www都转入同一标准规范的url;
  • 用户无需理会http与https的概念,后由Nginx拉管处理。

对搜索引擎更为友好的连接规范

在前几年,大家都用http协议,所以不会有协议规范问题,但现在几乎近半的平台都开启了https协议,这样就会造成双协议共存问题,这是一个小细节,我们需要处理。

最好的协议优化是让https完全接管http,做永久重定向。每当搜索引擎对你的站点爬行时,你都会明确告诉它,我的连接只有一种标准,不要把我的权重分散。

Demo配置

# xxx.com
# HTTP Server
server {
    listen 80;
    server_name xxx.com www.xxx.com;
    return 301 https://$server_name$request_uri;
}
# HTTPS Server
server {
    listen 443 ssl;
    server_name xxx.com www.xxx.com;
    root /var/www/xxx.com;
    index index.php;
    ssl_certificate 你的证书路径;
    ssl_certificate_key 你的证书路径;
    ssl_session_cache   shared:SSL:10m;
    ssl_session_timeout 10m;
    ssl_session_tickets off;
    ssl_protocols       TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers         'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
    # 如果https是不带www的,则重定向www
    if ($host = 'xxx.com') {
      return 301 https://www.xxx.com$request_uri;
    }
    location = /favicon.ico {
        log_not_found off;
        access_log off;
    }
    location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
    }
    location / {
        try_files $uri $uri/ /index.php?$args;
    }
    location ~ .php$ {
        include fastcgi.conf;
        fastcgi_intercept_errors on;
        fastcgi_pass 127.0.0.1:9000;
    }
    location ~* .(js|CSS|png|jpg|jpeg|gif|ico)$ {
        expires max;
        log_not_found off;
    }
    location ~* .(eot|ttf|woff)$ {
       add_header Access-Control-Allow-Origin '*';
    }
    location ~ /.ht {
        deny  all;
    }
    location ~ /.well-known {
        allow all;
    }
}

上面这个配置是目前在使用的Nginx配置,完全实现了由https接管http,由www接管不带www,用户不管输入www与否都可以,搜索引擎不管是http还是https访问都会被引导到正确统一的地方。同时处理常见跨域兼容。

免费资源网 - https://freexyz.cn/
返回顶部
顶部