[MySQL][PHP]Rozwiązanie dla aplikacji saas |
[MySQL][PHP]Rozwiązanie dla aplikacji saas |
11.05.2019, 15:33:14
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 11.05.2019 Ostrzeżenie: (0%) |
Dzień dobry,
Mam aplikację autorską systemy rezerwacji pisaną w czystym php bez frameworka. Odsprzedaję ją klientom, którzy chcą jej użyć na swojej stronie internetowej .I jak mam klienta to za każdym razem tworzę nowe konto na moim VPS i kopiuję wszystkie pliki, tworzę bazę danych itp.Jest to dość męczące i problematyczne w aktualizacji tych aplikacji typu poprawki, nowe funkcje itp. Więc wpadłem na pomysł, żeby to małym nakładem pracy przerobić i teraz widzę takie rozwiązania coś jak saas: 1.Rozwiązanie Zrobić coś na zasadzie, że każde nowo stworzone konto od razu pobiera dane np z /home/systemrezerwacji/, potem robie w plikach config, że system rozpoznaję, z jakiej domeny pochodzi wejście i w pliku config przydziela mu dostęp do bazy oraz katalogu do dodawania swoich plików, zdjęć itp. I nawet wiem jak to zrobić ale administrator VPS mi tego odradził bo powiedział że np jak jeden system rezerwacji zostanie złośliwie zaatakowany to haker będzie miał dostęp do tych plików i jak namiesza to wszystkie systemy rezerwacji ucierpią bo korzystają z tych samych plików źródłowych.I chyba ma rację. 2.Rozwiązanie Otwieram nowe konto na VPS automatycznie do nowego konta kopiują się pliki ze wskazanego katalogu np /home/systemrezerwacji/ itp i tworzy się baza danych.Z tym wyjątkiem że funkcje lub całe pliki pobiera przez api curl z głównego katalogu czyli np /home/systemrezerwacji/. Będzie łatwiej aktualizować błędy itp.I tu pytanie : - czy idzie poprzez curl zrobić tak żeby pobierał do używania cały plik php - czy ta metoda jest bezpieczna czy np w razie ataku haker będzie miał dostęp do pliku który się pobiera za pomocą curl z /home/systemrezerwacji/ i będzie mógł ingerować w ten plik? chodzi o to czy będzie miał dostęp do tego pliku w katalogu głównym /home/systemrezerwacji/ 3.Rozwiązanie (rozważałem to rozwiązanie ze względu na bezpieczeństwo i niezależność systemów rezerwacji) Otwieram nowe konto na VPS automatycznie do nowego konta kopiują się pliki ze wskazanego katalogu np /home/systemrezerwacji/ itp i tworzy się baza danych.Ale do aktualizacji plików np poprawki błedów oraz dodawania nowych funkcjonalności używam curlfile czyli wysyłam pliki z głównego serwera a na systemach rezerwacji jest odbiór uploadowanych plików w ten sposób systemy rezerwacji będą zawsze aktualne itp. Proszę o sugestie jak to powinno wyglądać, które z tych rozwiązań ma najlepsze zastosowanie? Z góry napiszę że przerabianie tego lub pisanie od nowa np w laravel nie wchodzi w gre. |
|
|
11.05.2019, 16:57:37
Post
#2
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
Ja bym napisał coś w Ansible do automatyzacji tego procesu. Wtedy dodajesz sobie tylko kilka wpisów konfiguracyjnych, odpalasz i masz gotowy system. Do tego dodatkowy moduł (Role) do robienia update.
Innym pomysłem może być użycie dockera. Zamykasz swój kod PHP w obrazie, wysyłasz do registry (prywatne koniecznie) a na maszynkach robisz docker pull; docker rm; docker run A jeśli nie chcesz się bawić to 3 chyba najwygodniejsze. Robisz sobie jakiś mały Bash skrypt który kopiuje pliki projektu do wszystkich klientów, zakłada bazy itd. |
|
|
11.05.2019, 17:09:45
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 11.05.2019 Ostrzeżenie: (0%) |
Dzięki za odpowiedź. Inne sugestie mile widziane
|
|
|
Wersja Lo-Fi | Aktualny czas: 18.04.2024 - 13:13 |