2011-11-21 24 views
14

Mam opracowany małą aplikację internetową w Symfony 2 i Nauki 2.Symfony 2 bez dostępu SSH

można wdrożyć go w internetowej hosta, który nie daje dostęp SSH?

Pytam o to, bo widzę, że wiele zadań, które muszą być wykonane z terminala, jak aktualizowanie schematu bazy danych, tworzenie dowiązania do aktywów, wyczyszczenie pamięci podręcznej, itp ...

Odpowiedz

15

nie powinno być problemu:

  • Utwórz kopię systemu gdzieś, najlepiej z identyczne parametry połączenia DB, takie jak system produkcyjny.
  • Wykonaj wszystkie niezbędne zadania za pomocą parametru --env=prod, jeśli pozwalają na to ustawienia DB.
  • Sklonuj utworzoną bazę danych produkcji do systemu produkcyjnego (za pomocą phpMyAdmin). Możesz klonować schemat z produkcyjnej bazy danych, uruchomić lokalnie app/console doctrine:schema:update --dump-sql, a następnie uruchomić wygenerowany kod SQL na serwerze produkcyjnym.
  • Skopiuj wszystkie pliki, z wyłączeniem katalogów w app/cache i app/log
+2

z wyłączeniem katalogu pamięci podręcznej i dziennika kończy się w wyjątku ... po prostu wykluczyć app/cache/* i app/log/*, aby foldery pozostały puste w wdrożonej witrynie – Flask

+7

Tak, dlatego napisałem katalog ** w ** aplikacji/pamięci podręcznej i aplikacji/logu. – chiborg

0

Może jest sposób (z sftp na przykład), ale to będzie jak stara się jeździć na rowerze z kołami kwadratowych;)

+1

Jeśli usługodawca hostingowy udostępnia usługę sftp, zwykle zawiera także konto powłoki. porównanie do motocykla z kwadratowymi kołami może być trochę za trudne ... działa, ale nie będzie tak szybko, jak w powłoce - środowisko – Flask

3

Zrobiłem to wiele razy z SF 1.4, a powinno być tak proste z SF 2.

Niektóre low end gospodarzami mają ograniczenia, które spowodują problemy z symfony, więc ważne jest, aby uruchomić skrypt sprawdzania kompatybilności symfony (możesz go przesłać, a następnie wprowadzić jego adres URL w przeglądarce, aby uzyskać wyjście). Gdy to zrobisz, wykonaj następujące proste kroki:

  1. skopiuj wszystkie pliki projektu. Zazwyczaj rozpakowuję/skanuję folder projektu, ładuję go i rozpakowuję.
  2. Wyeksportuj bazę danych ze środowiska programistycznego i prześlij ją na nowy serwer.
  3. Edytuj konfigurację i zaktualizuj ustawienia bazy danych. Jeśli masz gdzieś na stałe zakodowane ścieżki w swoim kodzie, teraz jest czas, aby je naprawić.
  4. Upewnij się, że użytkownik apache (lub innego oprogramowania serwera, którego używa twój host) ma pełny dostęp do katalogów pamięci podręcznej i dziennika. Może to być trudne na niektórych hostach, musiałem skontaktować się z obsługą w przeszłości, aby ktoś mógł się zalogować i zmienić uprawnienia.
  5. W narzędziu konfiguracyjnym hostów internetowych ustaw webroot dla swojej witryny w folderze internetowym w projekcie.