没有https的nginx服务器名称

我已经configurationnginx 1.4.1使用自签名证书使用tls / ssl。 我只能使用LAN IP地址通过https进行连接。 我也可以连接到server_name ,但只能通过http,它只显示“Welcome to nginx!” 页。 任何关于如何使用server_name获得https的想法? ( nginx.conf只是默认的。)

 $ cat /etc/nginx/sites-available/example.conf server { listen 443 ssl; server_name example.com; root /srv/web; ssl_certificate /srv/server.crt; ssl_certificate_key /srv/server.key; ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers RC4:HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; location / { proxy_set_header X-Forward-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_pass http://127.0.0.1:8000; } location ~ /\. { deny all; } } 

编辑:重要的是我在别人的(免费/公共)子域? 我知道要获得由CA签名的证书,您需要certificate域名所有权,但在我的使用情况下,对于nginx无关紧要?

尝试添加default_server到你显示的服务器节:

 server { listen 443 default_server ssl; server_name example.com; root /srv/web; ... 

不要忘记重新启动。

/etc/nginx/sites-enabled中的符号链接是否在/etc/nginx/sites-available的configuration文件中有符号链接?

nginx只读取/etc/nginx/sites-enabledconfiguration文件。