nginx rewtire不';行不通

nginx rewtire不';行不通,nginx,url-rewriting,Nginx,Url Rewriting,我正在尝试将短名称重写为FQDN 我的nginx版本是 nginx版本:nginx/1.13.4 server { listen 80; server_name foo foo.bar.com; rewrite_log on; rewrite ^ https://foo.bar.com/ permanent; include includes/web-site; include includes/files-site; } server { listen 443

我正在尝试将短名称重写为FQDN

我的nginx版本是 nginx版本:nginx/1.13.4

server {
  listen 80;
  server_name    foo foo.bar.com;
  rewrite_log on;
  rewrite ^ https://foo.bar.com/ permanent;
  include includes/web-site;
  include includes/files-site;
}
server {
  listen 443 ssl;
  server_name foo.bar.com
  ssl_protocols TLSv1.2;
  ssl_prefer_server_ciphers on;
  ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
  ssl_session_cache shared:SSL:10m;
  ssl_certificate foobar.crt;
  ssl_certificate_key foobar.key;
  add_header Strict-Transport-Security "max-age=31536000";
  include includes/web-site;
  include includes/files-site;
}

没有效果。有什么建议吗?

也许您只是想将非ssl通信重定向到ssl服务器。如果是这样,你可以试试这个

server {
    listen        80;
    server_name   foo.bar.com;
    rewrite       ^   https://$server_name$request_uri? permanent;
}

请参阅

不幸的是,这没有起到什么作用。