66 Commits
Author SHA1 Message Date
F4ilji cc08cdbc97 fix: 405 error on schedule upload/edit
- Edit.vue: move _method PUT from Inertia options to FormData (Inertia v2 ignores it in options)
- Upload.vue: add forceFormData: true for reliable multipart/form-data
- AccessCheck: add logging when abort() is triggered with non-200 code
- UploadSchedulesController: add request logging for diagnostics
- php.ini: increase max_file_uploads from 20 to 50 for bulk uploads
2026-09-18 01:32:34 +05:00
F4ilji b115cb93fd fix(vikon): increase nginx fastcgi_read_timeout to 600s, PHP set_time_limit 600 2026-07-04 21:40:51 +05:00
F4ilji b6140b77f5 vsoko conf changes 2026-07-04 20:03:19 +05:00
F4ilji 3424553d39 fix(nginx): allow vikon_core/update/index.php for OAuth callback 2026-07-04 18:11:49 +05:00
F4ilji dcb0426264 Fix prod nginx: ^~ for Jenkins proxy 2026-07-02 21:48:07 +05:00
F4ilji b877153f3f Fix: use ^~ for Jenkins to override regex static locations 2026-07-02 21:46:15 +05:00
F4ilji db968ad9b0 Simplify Jenkins proxy: remove port exposure, add proxy_redirect 2026-07-02 21:43:56 +05:00
F4ilji acae8ae59d Fix: use ^~ for Jenkins static assets to override regex 2026-07-02 21:42:16 +05:00
F4ilji b041558cc3 Fix Jenkins proxy: separate static assets location 2026-07-02 21:41:32 +05:00
F4ilji c807947968 Fix Jenkins proxy with sub_filter for static assets 2026-07-02 21:40:29 +05:00
F4ilji aff60841b4 Add Jenkins proxy to test nginx config 2026-07-02 21:38:29 +05:00
F4ilji ba362902e6 Add Jenkins reverse proxy via nginx 2026-07-02 21:36:23 +05:00
F4ilji 48ffd217b8 fix: secure deploy API, remove Docker-in-Docker, add DB backup
- Add web+superadmin middleware to /api/deploy routes
- Return JSON 403 in EnsureUserIsSuperadmin for API requests
- Remove Docker CLI and docker.sock from app container
- Replace docker compose restart with supervisorctl
- Add mysqldump backup step before migrations
2026-07-02 17:26:38 +05:00
F4ilji cc98d509e5 fix: add Docker CLI to PHP container for deploy script
- Install docker-ce-cli + docker-compose-plugin in Dockerfile
- Mount Docker socket in docker-compose.yml
- Add www-data to docker group for socket access
2026-07-02 01:50:40 +05:00
F4ilji 80b88405f1 fix: resolve Sveden upload permissions and CSRF cookie issue
- Add hostgroup (GID 1000) to Dockerfile so www-data inside container can write to sveden/
- Add credentials: 'same-origin' to fetch calls in Sveden.vue and QuickUpload.vue to send session cookies
2026-07-01 13:10:59 +05:00
F4ilji 9b71f62a04 changes 2026-04-14 22:57:27 +05:00
F4ilji d3433f2a1d changes 2026-04-14 22:52:21 +05:00
F4ilji ad91077263 changes 2026-04-13 20:28:10 +05:00
F4ilji b8c96704c2 changes 2026-04-13 20:23:08 +05:00
F4ilji 169a2f5654 changes 2026-04-08 14:14:38 +05:00
F4iljiandQwen-Coder 662b722ad4 fix(nginx): добавить mc.yandex.ru в CSP для Яндекс.Метрики
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-04-07 20:26:05 +05:00
F4iljiandQwen-Coder 736ea7ae3a fix(nginx): добавить cdn.jsdelivr.net в style-src CSP
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-04-07 20:21:40 +05:00
F4iljiandQwen-Coder da0215176a fix(nginx): добавить внешние CDN в CSP (TinyMCE, шрифты) и опубликовать Livewire ассеты
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-04-07 20:11:58 +05:00
F4ilji c2bf1127a5 fix 2026-04-07 20:01:27 +05:00
F4iljiandQwen-Coder 3f906cbc20 fix(php): добавить /dev/null в open_basedir для composer
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-04-07 20:00:58 +05:00
F4iljiandQwen-Coder 2d5b371247 fix(php): разрешить proc_open для Inertia SSR и расширить open_basedir для composer (включая /root)
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-04-07 19:53:33 +05:00
F4ilji 75f9c73dc7 fix(php): добавить /usr/local/bin в open_basedir для работы composer 2026-04-07 18:34:46 +05:00
F4iljiandQwen-Coder 5d946eec3a fix(nginx): разрешить доступ к публичным vendor ассетам (log-viewer)
Проблема: Правило 'location ~ ^/vendor/ { deny all; }' блокировало
доступ к CSS/JS файлам log-viewer в public/vendor/log-viewer/.

Решение:
- location /vendor/ — разрешает доступ к статическим файлам
- Запрещает выполнение .php файлов (security)
- try_files $uri =404 — отдаёт файлы если существуют
- autoindex off — запрещает листинг директорий

Fix: Log Viewer UI не загружался (app.css failed to load)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-04-07 18:14:38 +05:00
F4iljiandQwen-Coder b1d964a526 fix(nginx): разрешить доступ к публичным файлам storage через symlink
Проблема: Правило 'location ~ ^/storage/ { deny all; }' блокировало
ВСЕ запросы к /storage/, включая файлы доступные через symlink
public/storage -> storage/app/public.

Решение:
- location /storage/ — разрешает доступ к статическим файлам (изображения, документы)
- Запрещает выполнение .php файлов в storage (security)
- try_files $uri =404 — отдаёт файлы если они существуют
- Запрещает листинг директорий (autoindex off)

Fix: Изображения новостей не загружались (404 ошибка)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-04-07 18:08:37 +05:00
F4ilji 04adba6682 Changes 2026-04-07 17:47:00 +05:00
F4iljiandQwen-Coder c115a5c7a7 fix(IMAP): оптимизация обработки email для предотвращения memory exhaustion
Корневая проблема: библиотека webklex/php-imap загружала все тела писем
по умолчанию, что приводило к исчерпанию 256MB памяти при 50+ письмах.

Решение (3 уровня):

Уровень 1 - Конфигурация:
- config/imap.php: добавлены fetch_body=false, fetch_flags=false, fetch_limit=20
- php.ini: увеличен memory_limit с 256M до 1G, добавлены OPcache настройки

Уровень 2 - Оптимизация кода:
- FetchUnreadEmailsTask: setFetchBody(false), лимиты, MemoryAwareTrait
- FetchEmailNewsAction: batch-обработка (10 писем), gc_collect_cycles()
- DownloadAttachmentsTask: lazy load вложений, extension whitelist (security)
- ConnectToImapTask: MemoryAwareTrait для мониторинга

Уровень 3 - Инфраструктура:
- ProcessEmailNewsJob: queue job для асинхронной обработки (3 попытки, 300s timeout)
- FetchEmailNewsCommand: поддержка --async режима
- MemoryAwareTrait: reusable трейт для мониторинга памяти

Security fixes:
- Extension whitelist для предотвращения path traversal
- Убраны реальные email из config/imap.php
- Добавлена проверка на null message объект

Docs:
- README_EMAIL_OPTIMIZATION.md: полная документация по оптимизации

Fixes: Allowed memory size of 268435456 bytes exhausted

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-04-06 22:08:03 +05:00
F4ilji 1256adba98 changes 2026-03-23 10:50:31 +05:00
F4ilji a3948c872e Changes 2026-03-20 21:47:02 +05:00
F4ilji d0cda1dac2 return nginx.conf 2026-01-27 13:41:26 +05:00
F4ilji 9330ed457c change nginx.conf 2026-01-25 22:51:13 +05:00
F4ilji 7ef80e7207 change nginx.conf 2026-01-22 14:03:55 +05:00
F4ilji 8104d0b6cd change nginx.conf 2026-01-22 13:27:18 +05:00
F4ilji b976814d8b Updated nginx prod configuration 2026-01-21 16:36:48 +05:00
F4ilji afda333c25 Updated nginx prod configuration
Added schedule upload functionality in Filament
Updated .gitignore in public directory
2026-01-18 01:20:16 +05:00
F4ilji 1f61601e05 add cors rules 2026-01-09 19:07:51 +05:00
F4ilji 2d101dcdda feat: Refactor MainController and related tasks to follow Porto architecture
- Moved logic from MainController to dedicated action and task classes.
- Introduced GetMainPageDataAction, GetEducationsDataTask, GetRecentPostsTask, GetUpcomingEventsTask, and GetPageDataTask for better separation of concerns.
- Updated routes to use the new MainController from the Main container.
- Deprecated the old MainController with a clear message for future removal.
- Updated caching mechanisms to use the new task classes.
- Adjusted environment variable access to use config() instead of env() for better practice.
- Added new MainPageResource for structured data response.
- Updated .gitignore to exclude QWEN.md.
- Added Jenkins service to docker-compose for CI/CD integration.
2025-12-16 12:20:01 +05:00
F4ilji be68399ab8 changes Dockerfile 2025-08-11 17:55:07 +05:00
F4ilji e62b442991 Error correction and preparation of the project for initial deployment 2025-08-11 16:12:10 +05:00
F4ilji 9a1fcbbf9d update nginx configuration, enhance API route middleware to include 'web', add session middleware to HttpKernel, and improve educational program item and breadcrumbs components for better data display 2025-07-25 17:56:50 +05:00
F4ilji e403203e72 remove all .DS_Store files from the project 2025-07-22 18:49:44 +05:00
F4ilji e92e8a912c adding new configuration for http testing 2025-06-14 23:09:35 +05:00
F4ilji dc7c18691b fix bugs 2025-05-26 12:23:46 +05:00
F4ilji 00f475c9c3 fix bugs 2025-05-26 12:03:02 +05:00
F4ilji 9c22e7601c fix bugs 2025-05-22 15:22:19 +05:00
F4ilji 7f000877ee added SSL certificate let's encrypt 2025-05-19 22:15:23 +05:00