WordPress优化域名输入体验

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

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

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

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

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

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

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

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

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

Demo配置

# uedbox.com
# HTTP Server
server {
listen 80;
server_name uedbox.com www.uedbox.com;
return 301 https://$server_name$request_uri;
}

# HTTPS Server
server {
listen 443 ssl;
server_name uedbox.com www.uedbox.com;
root /var/www/uedbox.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 = 'uedbox.com') {
return 301 https://www.uedbox.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 {
denyall;
}

location ~ /.well-known {
allow all;

}

}

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