2012-11-06 13 views
7

Tło:Jak duplikować stronę opartą na PHP?

Jestem nowym do PHP, ale już został poproszony, aby wprowadzić pewne zmiany kodu do obsługi aplikacji hostowane na naszym Intranecie. Rzeczywiste zmiany w kodzie nie wyglądają źle. Jednak obecnie nie ma środowiska programistycznego, dlatego postanowiłem utworzyć duplikat serwera, aby opracować i przetestować moje zmiany.

W tym momencie i nie będąc dobrze zorientowanym w PHP, wygląda na to, że być może będę musiał odtworzyć wszystkie ustawienia/opcje/pakiety konfiguracyjne Apache HTTPD i PHP na maszynie produkcyjnej, chyba że mogę strategicznie skopiować istniejącą produkcję środowisko do maszyny programistycznej.

Moje pytania:

  1. Czy to możliwe, aby to zrobić? to jest FTP do niektórych katalogów w instalacji Apache/PHP do replikować oryginalne środowisko? Jeśli tak, jakie katalogi? Jednym z komplikacji może być to, że pierwotnym środowiskiem jest SUSE Linux, a maszyna programistyczna to CentOS. Poza tym zainstalowałem pasujące wersje HTTPD i PHP na komputerze programisty.
  2. Jeśli nie jest to rozsądne/możliwe, w jaki sposób powinienem powielid środowisko? Jakie obszary powinienem sprawdzić?

Z góry dziękuję!

+2

Może to lepiej pasować do http://www.serverfault.com –

+1

w zależności od charakteru aplikacji dokładny duplikat środowiska może nie być potrzebny. wiele witryn \ aplikacji jest rozwijanych w systemie Windows, a następnie przesyłanych do systemu Linux i wszystko jest w porządku - ale nie można powiedzieć, czy tak jest w tym przypadku. Możesz być w stanie umieścić kopię w innym katalogu na serwerze, wtedy większość rzeczy będzie taka sama. –

+0

Używanie 'Maszyny wirtualnej' lub' Vmware' na drugiej maszynie może być wyborem w zależności od sytuacji. – Xaqron

Odpowiedz

2

Alternatywą dla już wymienionych rozwiązań byłoby skonfigurowanie wirtualnego hosta na maszynie produkcyjnej, podobnie jak test.yourdomain.com i skopiowanie bazy danych do testowej bazy danych.

Następnie możesz przetestować swoją witrynę na serwerze na żywo w środowisku testowym, a będziesz musiał zmienić ustawienia połączeń db w wersji testowej.

1

Byłoby o wiele łatwiej i o wiele mniej problemów z sercem po prostu klon na serwerze, być może trzeba będzie porozmawiać z facetami, którzy opiekują się serwerami, aby to zrobić. Powodem, dla którego mówię, że to dlatego, że mogą istnieć różne moduły/biblioteki i cały szereg innych rzeczy, które są na serwerze, zajęłoby Ci naprawdę dużo czasu, aby dowiedzieć się dokładnie, czego potrzebujesz, jeśli masz dostać aplikację uruchomić dokładnie to samo na komputerze CentOS. Po drugie, najlepszą praktyką jest to, że oba środowiska są identyczne, dzięki czemu wiesz, że twoje testy są niezawodne.

+1

Nie wiem, czy jest to problemem dla @Steve T, ale klonowanie serwera SuSE wiązałoby się z dodatkowymi kosztami licencjonowania. Może to być spowodowane tym, że serwerem produkcyjnym jest SuSE i dev box CentOS. –

2

Sklonuj całą rzecz do maszyny wirtualnej, wyodrębnij kod i umieść go w repozytorium kodu źródłowego (na przykład git).

Po tym, jak rozwiną się na twoim komputerze, zainstaluj na swojej maszynie wirtualnej (chyba że możesz zdobyć inną maszynę lub masz czas i cierpliwość, aby dokonać inżynierii wstecznej konfiguracji sklonowanej maszyny).

Możesz rozpocząć wdrażanie, po prostu pobierając kod z VM, ale jeśli uważasz, że twój projekt może trwać dłużej, rozważ zaprojektowanie środowiska Continuous Integration, a także umieszczenie plików konfiguracyjnych VM w repozytorium git, możesz je odtworzyć. w produkcji (lub podłącz swoją produkcję do CI).

2

Jak powinienem powielid środowisko? Jakie obszary powinienem sprawdzić?

powinno się patrzeć w:

  • /etc/httpd/
  • /etc/php5/ (może być inna nazwa)

W szczególności, start z plików php.ini, httpd.conf i apache2.conf zawierał w tych folderach.

Powiązane problemy