Задать вопрос
@David138dev

Как установить веб сервер на линуксе?

Какие инструменты нужно использовать на настройки домашнего веб сервера, зная основы postgresql, django? линукс у меня стоит kali linux. Я знаю что есть инструменты апач и нжинкс. нужно ли их настраивать как то? не к phpmyadmin а к pgadmin. у меня уже база данных написанная на postgresql. теперь мне нужно в вебсервере эти данные включить и настроить
  • Вопрос задан
  • 566 просмотров
Подписаться 3 Простой 2 комментария
Решения вопроса 3
@Drno
нужно настраивать. исходя из Вашего веб проекта.
проще для новичка - apache.
Ответ написан
Можно используйте docker-compose с postgres, pgadmin, nginx, Gunicorn.
Или
Есть OpenServer на докере и там есть Postgres и Python
https://github.com/reptily/openserver
Ответ написан
@rPman
Первое умение современного айтишника, который должен освоить каждый - умение гуглить, все ответы в интернете уже есть.

База данных сама по себе не может быть 'подключена к веб серверу', между ними нужен бакэнд - приложение, которое из табличных данных базы и запросов пользователя (браузера) будет формировать такие ответы, чтобы браузер показывал красивую картинку.

Веб сервер нужно настроить, указать в каком каталоге находится файлы бакэнда, включить поддержку языка бакэнда (например модули php или asp, или это fast cgi протокол, или настроить tomcat java... в общем что там тебе нравится), указать какой домен или ip адрес у сайта, настроить ключи для работы шифрованного https протокола и ограничения доступа, к примеру чтобы хитрые пользователи не смотрели списки файлов в каталоге и не загружали конфигурационные и вспомогательные файлы

p.s. настоятельно рекомендую не kali linux а более приземленный вариант - ubuntu server (да любой ubuntu/xubuntu/kubuntu/...) так как проблем он создает сильно меньше, решений в интернете готовых больше
а вот kali - прямой признак кулхацкера, который хочет казаться крутым не будучи таковым
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@eduardberlin
Для установки веб-сервера на Linux, включая Kali Linux, можно использовать различные инструменты, включая Apache, Nginx или другие. Для вашего случая, если вы знаете основы PostgreSQL и Django, то я бы рекомендовал использовать Nginx в качестве веб-сервера.

Вот пошаговая инструкция по установке и настройке Nginx на Kali Linux:

Установка Nginx:

sudo apt-get update
sudo apt-get install nginx
Проверка, что Nginx запущен и работает:

sudo systemctl status nginx
Если Nginx запущен, вы должны увидеть сообщение об успешном запуске.

Настройка Nginx для работы с Django:

a. Создайте файл конфигурации в /etc/nginx/sites-available/ с именем, например, myapp:

```
sudo nano /etc/nginx/sites-available/myapp
```
b. Вставьте следующий код в файл конфигурации, заменив myapp.example.com на доменное имя вашего сайта:

```
server {
listen 80;
server_name myapp.example.com;

location / {
proxy_pass 127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
```
Этот конфигурационный файл настраивает Nginx на проксирование запросов на порт 8000, где запущен Django.

c. Создайте символическую ссылку в /etc/nginx/sites-enabled/, чтобы активировать новый конфигурационный файл:

```
sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
```
d. Проверьте наличие ошибок в конфигурационном файле:

```
sudo nginx -t
```
e. Если ошибок нет, перезапустите Nginx:

```
sudo systemctl restart nginx
```
Теперь вы можете открыть ваш веб-браузер и перейти на myapp.example.com, чтобы убедиться, что ваше Django-приложение работает через Nginx.

Настройка Nginx для работы с PostgreSQL:

a. Установите драйвер для Python, чтобы взаимодействовать с PostgreSQL:

```
pip install psycopg2-binary
```
b. Создайте базу данных в PostgreSQL и настройте Django для работы с ней.

c. В файле settings.py вашего Django-приложения настройте базу данных:

```
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'mydatabase',
'USER': 'mydatabaseuser',
'PASSWORD': 'mypassword',
'HOST': 'localhost',
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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