2016-05-27 2 views
1

Я установил nginx на Fedora. Но я не знаю, почему я не могу получить страницу nginx по умолчанию, запросив IP-адрес сервера через браузер. Мой запрос отключен таймаутом.NGINX не показывает страницу по умолчанию на Amazon EC2 Экземпляр

Но nginx работает.

$ sudo service nginx status 
nginx (pid 20372) is running... 

Моего по умолчанию генерируется конфигурацией является

# For more information on configuration, see: 
# * Official English Documentation: http://nginx.org/en/docs/ 
# * Official Russian Documentation: http://nginx.org/ru/docs/ 

user nginx; 
worker_processes auto; 
error_log /var/log/nginx/error.log; 
pid /var/run/nginx.pid; 

events { 
    worker_connections 1024; 
} 

http { 
    log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 
         '$status $body_bytes_sent "$http_referer" ' 
         '"$http_user_agent" "$http_x_forwarded_for"'; 

    access_log /var/log/nginx/access.log main; 

    sendfile   on; 
    tcp_nopush   on; 
    tcp_nodelay   on; 
    keepalive_timeout 65; 
    types_hash_max_size 2048; 

    include    /etc/nginx/mime.types; 
    default_type  application/octet-stream; 

    # Load modular configuration files from the /etc/nginx/conf.d directory. 
    # See http://nginx.org/en/docs/ngx_core_module.html#include 
    # for more information. 
    include /etc/nginx/conf.d/*.conf; 

    index index.html index.htm; 

    server { 
     listen  80 default_server; 
     listen  [::]:80 default_server; 
     server_name localhost; 
     root   /usr/share/nginx/html; 

     # Load configuration files for the default server block. 
     include /etc/nginx/default.d/*.conf; 

     location/{ 
     } 

     # redirect server error pages to the static page /40x.html 
     # 
     error_page 404 /404.html; 
      location = /40x.html { 
     } 

     # redirect server error pages to the static page /50x.html 
     # 
     error_page 500 502 503 504 /50x.html; 
      location = /50x.html { 
     } 

     # proxy the PHP scripts to Apache listening on 127.0.0.1:80 
     # 
     #location ~ \.php$ { 
     # proxy_pass http://127.0.0.1; 
     #} 

     # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 
     # 
     #location ~ \.php$ { 
     # root   html; 
     # fastcgi_pass 127.0.0.1:9000; 
     # fastcgi_index index.php; 
     # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 
     # include  fastcgi_params; 
     #} 

     # deny access to .htaccess files, if Apache's document root 
     # concurs with nginx's one 
     # 
     #location ~ /\.ht { 
     # deny all; 
     #} 
    } 

# Settings for a TLS enabled server. 
# 
# server { 
#  listen  443 ssl; 
#  listen  [::]:443 ssl; 
#  server_name localhost; 
#  root   /usr/share/nginx/html; 
# 
#  ssl_certificate "/etc/pki/nginx/server.crt"; 
#  ssl_certificate_key "/etc/pki/nginx/private/server.key"; 
#  # It is *strongly* recommended to generate unique DH parameters 
#  # Generate them with: openssl dhparam -out /etc/pki/nginx/dhparams.pem 2048 
#  #ssl_dhparam "/etc/pki/nginx/dhparams.pem"; 
#  ssl_session_cache shared:SSL:1m; 
#  ssl_session_timeout 10m; 
#  ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
#  ssl_ciphers HIGH:SEED:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!RSAPSK:!aDH:!aECDH:!EDH-DSS-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA:!SRP; 
#  ssl_prefer_server_ciphers on; 
# 
#  # Load configuration files for the default server block. 
#  include /etc/nginx/default.d/*.conf; 
# 
#  location/{ 
#  } 
# 
#  error_page 404 /404.html; 
#   location = /40x.html { 
#  } 
# 
#  error_page 500 502 503 504 /50x.html; 
#   location = /50x.html { 
#  } 
# } 

} 

Я понятия не имею, что происходит. Также /var/log/nginx/access.log и /var/log/nginx/access.log пусты. Помогите пожалуйста ...

+1

В зависимости от того, где находится ваш сервер, вам может потребоваться настроить ваш брандмауэр для доступа к нему. Сервер может иметь свой собственный межсетевой экран. Если он находится в облаке (AWS), вы должны предоставить разрешение на доступ к нему из своего локального IP-адреса. Если вы находитесь в офисе, ваша компания может не разрешать доступ к определенным ips. – xxfelixxx

+0

Вы имеете в виду хост? Это EC2 Amazon. Что я могу сделать? –

+1

Ваш сервер принадлежит к группе безопасности. Перейдите в веб-консоль EC2 и найдите свой экземпляр. Нажмите на свою группу безопасности. Нажмите «Входящие». Нажмите «Изменить». Добавьте Rule -> HTTP и установите поле Source в My Ip. – xxfelixxx

ответ

3

На Amazon EC2 вам нужно будет открыть брандмауэр, чтобы разрешить входящие HTTP-соединения из вашего браузера в экземпляр.

  1. Войти в Amazon Web Console
  2. Перейти к EC2
  3. Найдите свой экземпляр
  4. Нажмите на ее группу безопасности
  5. Нажмите Tab Inbound
  6. Нажмите кнопку Изменить
  7. Add Rule ->HTTP, установите поле источника My Ip

Изменения вступят в силу немедленно.

Обратите внимание, что если вы получаете доступ к своему экземпляру из нефиксированного IP-адреса (кафетерий Wi-Fi), вам нужно будет изменить исходный IP-адрес при каждом подключении и назначить новый IP-адрес. Поэтому, если это сработает, а затем через некоторое время, похоже, это зависает, возможно, поэтому.

Если вы также обслуживаете HTTPS, вы также добавите определенное правило.