README.md

Описание

Моя жена очень любит собирать алмазные картины, и когда их стало больше 50, она стала путаться что покупала, а что нет, поэтому я для неё создал WEB каталог картин с разными параметрами типо личного рейтинга, типы страз, покупать или нет и т.п.

Как выглядит

Главная: Главная

Добавление картины: Добавление картины

Просмотр картины: Просмотр картины

Как запустить

  1. Используя .venv:

    1. Активация:

      python3 -m venv venv
      source venv/bin/activate
      pip install -r requirements.txt
      
    2. Запуск:

      source venv/bin/activate (если не вошли в venv ранее)
      python main.py
      
  2. Используя репозитории ALT Linux (тестировалось на p11):

    1. Установка зависимостей:

      su-
      preinstall-alt.sh
      
    2. Запуск:

      start.sh
      

Как настроить:

  1. config.ini - задаётся порт сервера и путь к библиотеке. Если путь к библиотеке не указан, то будет использоваться папка ./content в корне проекта
  2. ./logs - просто папка с файлами с логами. При ошибке на сайте чаще всего сайт сам скажет об этом и покажет логи, если вы авторизированы

Особенности

Я этот код скопировал и модифицировал со своего старого проекта WebAppCatalog, поэтому в HTML, CSS, JS могут быть мусорные строки, которые не используются (в python коде я вроде весь мусор убрал)

Дополнительная настройка на своём сервере

Рекомендуймая конфигурация службы systemd (linux):

[Unit]
Description=Описание службы

[Service]
ExecStart=/путь/до/папки/с/сайтом/start.sh
WorkingDirectory=/путь/до/папки/с/сайтом

[Install]
WantedBy=multi-user.target

Рекомендуемая конфигурация Nginx:

(замените example.com на свой домен)

(ssl_certificate и ssl_certificate_key должны вести на путь к файлам вашего сертификата ssl)

server {
    listen 443 ssl;
    server_name example.com;

    #сертификаты ssl для https
    ssl_certificate      /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key  /etc/letsencrypt/live/example.com/privkey.pem;

    #ограничение на максимальный размер загружаемого файла
    client_max_body_size 1024M;

    location / {
        proxy_pass http://127.0.0.1:3120;

        #указание реального IP
        proxy_http_version 1.1;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
server {
    listen 80;
    server_name example.com;
    return 301 https://example.com$request_uri;
}

LICENSE GPL 3.0

Описание
ImageCatalog - каталог для коллекций картин моей жены)
Конвейеры
0 успешных
0 с ошибкой
Разработчики