Nginx只能正确处理域名

在我的服务器上,对mydomain.com和www.mydomain.com的所有请求都正确地转到我的服务器的IP地址,并且内容显示正确。 但是,如果直接进入服务器的IP,则“欢迎使用nginx!” 显示默认页面。 我希望直接向服务器的IP请求显示正确的内容。 我的服务器configuration位于下方。 我还应该提到,仅仅在“server_name”行中的“mydomain.com”之后添加公共IP或“0.0.0.0”不会改变任何内容。 谢谢。

server { listen 443 ssl spdy; root /var/www; server_name mydomain.com www.mydomain.com; ssl_certificate /etc/nginx/ssl/ssl.crt; ssl_certificate_key /etc/nginx/ssl/ssl.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-RC4-SHA:ECDHE-RSA-RC4-SHA:ECDH-ECDSA-RC4-SHA:ECDH-RSA-RC4-SHA:ECDHE-RSA-AES256-SHA:RC4-SHA:HIGH:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!CBC:!EDH:!kEDH:!PSK:!SRP:!kECDH; ssl_prefer_server_ciphers on; keepalive_timeout 70; include /var/www/wp-content/plugins/better-wp-security/rules.conf; location / { try_files $uri $uri/ /index.php?q=$uri&$args; index index.php index.html index.htm; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/www; } location ~ \.php$ { fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; try_files $uri =404; } 

} server {listen 80; server_name mydomain.com www.mydomain.com; 重写^ https:// $ host $ request_uri permanent; }

您的domain.comwww.domain.comconfiguration是好的。 会发生什么情况是在nginx定义了另一个“默认” server (可能在主要的nginx.confconfiguration文件中),它响应IP的请求。 您需要删除所有服务器configuration。