- Add simple ProxyPass configuration matching existing patterns - Provide two variants: backend-only vs frontend/backend split - Recommend variant 2 for better performance Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
88 lines
2.5 KiB
Markdown
88 lines
2.5 KiB
Markdown
# Apache Configuration - Simple Version
|
|
|
|
## Для ai-sandbox.oliver.solutions
|
|
|
|
### Вариант 1: Только Backend Proxy (проще, но медленнее)
|
|
|
|
Backend FastAPI будет serve и static files и API:
|
|
|
|
```apache
|
|
# Oliver Metadata Tool - Backend only
|
|
ProxyPass /solventum-image-metadata/ http://localhost:5001/
|
|
ProxyPassReverse /solventum-image-metadata/ http://localhost:5001/
|
|
ProxyTimeout 600
|
|
```
|
|
|
|
**Требует:** Backend должен serve статические файлы React (добавить StaticFiles в FastAPI)
|
|
|
|
---
|
|
|
|
### Вариант 2: Разделение Frontend/Backend (быстрее, рекомендую)
|
|
|
|
Frontend - static files, Backend - только API:
|
|
|
|
```apache
|
|
# Oliver Metadata Tool - Frontend static files
|
|
Alias /solventum-image-metadata /var/www/html/solventum-image-metadata
|
|
|
|
<Directory /var/www/html/solventum-image-metadata>
|
|
Options -Indexes +FollowSymLinks
|
|
AllowOverride All
|
|
Require all granted
|
|
|
|
# React Router support
|
|
RewriteEngine On
|
|
RewriteBase /solventum-image-metadata
|
|
RewriteCond %{REQUEST_FILENAME} !-f
|
|
RewriteCond %{REQUEST_FILENAME} !-d
|
|
RewriteCond %{REQUEST_URI} !^/solventum-image-metadata/api/
|
|
RewriteRule ^ /solventum-image-metadata/index.html [L]
|
|
</Directory>
|
|
|
|
# Backend API - FastAPI
|
|
ProxyPass /solventum-image-metadata/api/ http://localhost:5001/
|
|
ProxyPassReverse /solventum-image-metadata/api/ http://localhost:5001/
|
|
ProxyTimeout 600
|
|
```
|
|
|
|
**Преимущества:**
|
|
- Apache serve статику быстрее чем FastAPI
|
|
- Backend занимается только API логикой
|
|
- Лучше кеширование static assets
|
|
|
|
---
|
|
|
|
## Что использовать?
|
|
|
|
**Рекомендую Вариант 2** - разделение Frontend/Backend.
|
|
|
|
Просто добавьте эти строки в существующую конфигурацию Apache.
|
|
|
|
## После изменения Apache:
|
|
|
|
```bash
|
|
# Проверить конфиг
|
|
sudo apache2ctl configtest
|
|
|
|
# Reload Apache
|
|
sudo systemctl reload apache2
|
|
```
|
|
|
|
## Также обновите .env на сервере:
|
|
|
|
```bash
|
|
sudo nano /opt/solventum-image-metadata/.env
|
|
|
|
# Добавьте /api/ в REDIRECT_URI:
|
|
REDIRECT_URI=https://ai-sandbox.oliver.solutions/solventum-image-metadata/api/auth/microsoft/callback
|
|
```
|
|
|
|
## Проверка:
|
|
|
|
```bash
|
|
# Frontend (static files через Apache)
|
|
curl https://ai-sandbox.oliver.solutions/solventum-image-metadata/
|
|
|
|
# Backend API (proxy через Apache)
|
|
curl https://ai-sandbox.oliver.solutions/solventum-image-metadata/api/health
|
|
```
|