У меня есть vps
сервер Reg.ru
и domain
freenom
.
На Reg.ru
я добавил domain
через dnsadmin
. Хорошо. Заметки созданы. Статус - synchronized
.
На freenom
в панели управления domain
имеются следующие поля: Name
, Type
, TTL
, Target
. Name
- пусто, TTL
- 3600
, Type
- A
, Target
- ip
из vps
сервера. Статус - active
.
Nginx
/ etc / nginx / sites-available / myproject и / etc / nginx / sites-enabled / myproject
server {
listen 80;
server_name example.com;
location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
root /home/myproject;
}
location / {
include proxy_params;
proxy_pass http://unix:/run/gunicorn.sock;
}
}
/ etc / nginx / nginx.conf
...
http {
...
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*.*;
}
nginx -t
- successful
systemctl status nginx
- active
ufw status
Status: active
To Action From
-- ------ ----
8000 ALLOW Anywhere
80 ALLOW Anywhere
443 ALLOW Anywhere
8000 (v6) ALLOW Anywhere (v6)
80 (v6) ALLOW Anywhere (v6)
443 (v6) ALLOW Anywhere (v6)
Когда я открываю ip из vps-server
в браузере, я получаю домашнюю страницу nginx
.
gunicorn
/ etc / systemd / system / gunicorn.service
[Unit]
Description=gunicorn daemon
Requires=gunicorn.socket
After=network.target
[Service]
User=root
Group=root
WorkingDirectory=/home/myproject
ExecStart=/home/myproject/myprojectenv/bin/gunicorn \
--access-logfile - \
--workers 3 \
--bind unix:/run/gunicorn.sock \
myproject.wsgi:application
[Install]
WantedBy=multi-user.target
/ etc / nginx/ sites-enabled # cat /etc/systemd/system/gunicorn.socket
[Unit]
Description=gunicorn socket
[Socket]
ListenStream=/run/gunicorn.sock
[Install]
WantedBy=sockets.target
systemctl status gunicorn
- active
Django
/ home / myproject / myproject / .settings.py
ALLOWED_HOSTS = ['example.com', 'localhost']
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'test_db',
'USER': 'test_user',
'PASSWORD': 'test',
'HOST': 'localhost',
'PORT': '',
}
}
Я запускаю manage.py runserver
и получаю ответ от Django
, что сервер запущен 127.0.0.1:8000
.
Но когда я открываю сайт под именем domain
(например, example.com
), я получаю сообщение об ошибке:
Невозможно получить доступ к сайту
Не удалось найти IP-адрес сервера example.com.