Skip to content

Instalacja Wszystko w Jednym Folderze (Shared Hosting) ​

System Ammonly został zaprojektowany z myślą o maksymalnej elastyczności wdrożeniowej. Poza klasyczną architekturą wielodomenową (osobne subdomeny dla każdego tieru), platforma w pełni wspiera topologię All-In-One w jednym folderze.


Wyzwanie Tradycyjnego Hostingu ​

Na hostingach współdzielonych (shared hosting, cPanel, DirectAdmin) administratorzy często dysponują tylko jedną domeną główną oraz wspólnym katalogiem publicznym public_html/. W takich warunkach nie ma możliwości konfiguracji niezależnych Document Rootów ani subdomen dla poszczególnych komponentów systemu.

Platforma Ammonly rozwiązuje ten problem za pomocą wielowarstwowego mechanizmu routingu prefiksowego.


Architektura Jednego Folderu ​

W instalacji All-In-One wszystkie cztery środowiska systemu działają pod jedną domeną główną, z czytelnym podziałem na prefiksy URL:

https://twoja-domena.pl/               -> Domyślny Dashboard lub selektor środowisk
https://twoja-domena.pl/panel          -> Ammonly Panel (Centrala Administracyjna)
https://twoja-domena.pl/helpdesk       -> Ammonly Helpdesk (Portal Wsparcia i Obsługi Klienta)
https://twoja-domena.pl/crm            -> Ammonly CRM (Aplikacja Operacyjna SaaS CRM)
https://twoja-domena.pl/shop           -> Ammonly Shop (Sklep Internetowy & Storefront)

Dwie Niezależne Metody Działania ​

Platforma oferuje dwie uzupełniające się techniki routingu, które działają niezawodnie w każdym środowisku hostingowym:

1. Unified Routing (Routing Prefiksowy w public/index.php) ​

Główny punkt wejścia aplikacji (public/index.php) automatycznie analizuje ścieżkę żądania HTTP:

  1. Jeżeli ścieżka zaczyna się od /panel, /helpdesk, /crm lub /shop, silnik dynamicznie ustala profil aplikacji (AppTier).
  2. Ścieżka bazowa (base_path) zostaje wstrzyknięta do atrybutów żądania PSR-7.
  3. Wewnętrzny router obsługuje żądanie z zachowaniem pełnej izolacji sesji, ciasteczek i uprawnień danego tieru.

2. Fizyczne Podfoldery Entrypointów ​

W katalogu public/ znajdują się dedykowane, fizyczne podfoldery z własnymi plikami index.php i regułami .htaccess:

  • public/panel/index.php
  • public/helpdesk/index.php
  • public/crm/index.php
  • public/shop/index.php

Gdy serwer Apache lub Nginx kieruje ruch do fizycznego podkatalogu, każdy podkatalog ładuje odpowiedni profil tieru bez konieczności istnienia niezależnych poddomen czy specjalnej konfiguracji serwera!


Konfiguracja Serwerów WWW ​

Apache (.htaccess) ​

W głównym katalogu public/.htaccess zawarta jest reguła przekierowania zapytań:

apache
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^ index.php [L,QSA]
</IfModule>

W każdym z podfolderów (public/panel/.htaccess, public/helpdesk/.htaccess, public/crm/.htaccess, public/shop/.htaccess) znajduje się analogiczna reguła zapewniająca obsługę ścieżek REST API oraz zapytań HTMX.

Nginx ​

Dla serwera Nginx pojedynczy blok serwera w pełni obsługuje instalację w jednym folderze:

nginx
server {
    listen 80;
    server_name twoja-domena.pl;
    root /var/www/html/public;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php$is_args$args;
    }

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass php-fpm:9000;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}

Instrukcja Wdrożenia na Shared Hosting (Krok po Kroku) ​

  1. Struktura Katalogów na Serwerze: Wgraj zawartość repozytorium do katalogu prywatnego użytkownika (np. /home/uzytkownik/ammonly), poza bezpośrednim dostępem z sieci.
  2. Katalog Publiczny (public_html):
    • Opcja A (Zalecana): Skonfiguruj Document Root domeny w panelu hostingu tak, aby wskazywał na /home/uzytkownik/ammonly/public.
    • Opcja B: Utwórz dowiązanie symboliczne: ln -s /home/uzytkownik/ammonly/public /home/uzytkownik/public_html.
    • Opcja C: Wgraj zawartość katalogu public/ bezpośrednio do public_html/, a w plikach index.php dostosuj ścieżkę do autoloadera Composera (../ammonly/vendor/autoload.php).
  3. Uprawnienia do Zapisu: Upewnij się, że serwer WWW posiada uprawnienia do zapisu w katalogach:
    • storage/ (sesje, logi, klucze, cache)
    • database/config/ (plik konfiguracji installer.local.php)
  4. Uruchomienie Kreatora: Otwórz przeglądarkę i wejdź na adres https://twoja-domena.pl/. System wykryje brak instalacji i automatycznie przekieruje Cię do kreatora /install.
  5. Wybór Opcji w Kreatorze: W Kroku 3 wybierz opcję Wszystkie (Zalecane), aby zainstalować Panel, Helpdesk, CRM i Shop na wspólnej bazie.
  6. Logowanie po Instalacji:
    • https://twoja-domena.pl/panel – konsola administracyjna Panelu.
    • https://twoja-domena.pl/helpdesk – portal Helpdesku i obsługi zgłoszeń.
    • https://twoja-domena.pl/crm – codzienna praca operacyjna w systemie CRM.
    • https://twoja-domena.pl/shop – storefront e-commerce B2B/B2C oraz zarządzanie sklepem.

Ammonly Documentation System