Задать вопрос
morto
@morto
вечный ученик

Почему не открывается сайт по домену на виртуалке в linux?

Здравствуйте, хабрики, недавно начал погружаться в DevOps и решил поднять свой сервер на nginx по гайдам с ютуба.Делал всё шаг за шагом, но что-то пошло не так. Не отдается сайт по домену ( надеюсь правильно обозвал ) mysite.dev а через 192.168.1.71 все работает, если вбивать в браузер не на виртуалке( который enp0s3). Если добавить в /etc/hosts строчку 192.168.1.71 mysite.dev, то через curl с виртуалки отдает html, а через браузер на моем пк нет.
Что я делал:
1. Скачал виртуал бокс поставил туда убунту сервер 20.
2.Скачал nginx всякие пакеты и тому подобное.
3.Скачал брандамауэр ufw, добавил туда:
OpenSSH                    ALLOW       Anywhere                  
Nginx Full                 ALLOW       Anywhere                  
Nginx HTTP                 ALLOW       Anywhere                  
Nginx HTTPS                ALLOW       Anywhere                  
33555                      ALLOW       Anywhere                  
443                        ALLOW       Anywhere                  
80                         ALLOW       Anywhere                  
OpenSSH (v6)               ALLOW       Anywhere (v6)             
Nginx Full (v6)            ALLOW       Anywhere (v6)             
Nginx HTTP (v6)            ALLOW       Anywhere (v6)             
Nginx HTTPS (v6)           ALLOW       Anywhere (v6)             
33555 (v6)                 ALLOW       Anywhere (v6)             
443 (v6)                   ALLOW       Anywhere (v6)             
80 (v6)                    ALLOW       Anywhere (v6)

4. Добавил в /var/www/mysite.dev /html index.html с разметочкой.
5. Добавил в /etc/nginx/sites-avaliable mysite.dev.conf конфиг для него и линканул в /etc/nginx/sites-enable/:
server {
   listen 80;
   listen [::]:80;

   root /var/www/mysite.dev/html;
   index index.html index.htm;

   server_name mysite.dev;

   location / {
       try_files $uri $uri/ =404;
   }
}
.
6. Если пытаться получить ssh через certbot то пишет это (скорее всего потому что это не публичный домен но мало-ли):
Certbot failed to authenticate some domains (authenticator: nginx). The Certificate Authority reported these problems:
  Domain: mysite.dev
  Type:   dns
  Detail: DNS problem: NXDOMAIN looking up A for mysite.dev  - check that a DNS record exists for this domain

Hint: The Certificate Authority failed to verify the temporary nginx configuration changes made by Certbot. Ensure the listed domains point to this nginx server and that it is accessible from the internet.

8.Конфиг /etc/nginx/nginx.conf:
load_module modules/ngx_http_brotli_filter_module.so;
load_module modules/ngx_http_brotli_static_module.so;
user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;


events {
	worker_connections 768;
	# multi_accept on;
}

http {

	##
	# Basic Settings
	##

	sendfile on;
	tcp_nopush on;
	tcp_nodelay on;
	keepalive_timeout 65;
	types_hash_max_size 2048;
	# server_tokens off;

	# server_names_hash_bucket_size 64;
	# server_name_in_redirect off;

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

	##
	# SSL Settings
	##

	ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Dropping SSLv3, ref: POODLE
	ssl_prefer_server_ciphers on;

	##
	# Logging Settings
	##

	access_log /var/log/nginx/access.log;
	error_log /var/log/nginx/error.log;

	##
	# Gzip Settings
	##

	gzip on;

	# gzip_vary on;
	# gzip_proxied any;
	# gzip_comp_level 6;
	# gzip_buffers 16 8k;
	# gzip_http_version 1.1;
	# gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;

	##
	# Virtual Host Configs
	##

	include /etc/nginx/conf.d/*.conf;
	include /etc/nginx/sites-enabled/*;

# Compression brotli 
    brotli              on;
    brotli_comp_level   6;
    brotli_static       on;
    brotli_types        text/xml image/svg+xml application/x-font-ttf image/vnd.microsoft.icon application/x-font-opentype application/json font/eot application/vnd.ms-fontobject application/javascript font/otf application/xml application/xhtml+xml text/javascript  application/x-javascript text/plain application/x-font-truetype application/xml+rss image/x-icon font/opentype text/css image/x-win-bitmap;

}


#mail {
#	# See sample authentication script at:
#	# http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript
# 
#	# auth_http localhost/auth.php;
#	# pop3_capabilities "TOP" "USER";
#	# imap_capabilities "IMAP4rev1" "UIDPLUS";
# 
#	server {
#		listen     localhost:110;
#		protocol   pop3;
#		proxy      on;
#	}
# 
#	server {
#		listen     localhost:143;
#		protocol   imap;
#		proxy      on;
#	}
#}
  • Вопрос задан
  • 1143 просмотра
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
flapflapjack
@flapflapjack
на треть я прав
Ну, во-первых судя по вопросу вы вообще не шарите.
Во-вторых вы добавили на виртуалке в /etc/hosts хостнейм для адреса. Поздравляю, теперь виртуалка знает о хосте mysite.dev.

Но ваша хост-машина об этом хосте ничего не знает. Добавьте в C:/Windows/system32/drivers/etc/hosts такую же строку, как в линуксе.

Не дай бог мне такого девопса ))

DevOps — методология активного взаимодействия специалистов по разработке со специалистами по информационно-технологическому обслуживанию и взаимная интеграция их...


То есть вам для начала нужно уметь быть разработчиком, потом еще и побыть линукс-администратором, и вот может быть потом когда-нибудь, смотреть в сторону девопса.

Вам не то что далеко, вы вообще с конца начали)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы