-
Notifications
You must be signed in to change notification settings - Fork 33
nonvm_windows
UWAGA: Ten dokument został automatycznie przekonwertowany podczas migracji Google Code -> GitHub i może zawierać błędne formatowanie.
UWAGA. Ta instrukcja może być nieaktualna.
Autor: Łza (wloczynutka)
Uruchomienie kodu Bez użycia maszyny wirtualnej (kod leży na windowsowym serwerze, np xampp, zendCE)
Dla tych którzy mają alergię na "czarnego" podaję testowaną właśnie przezemnie metodę uruchomienia kodu OC bez użycia VM. Zalety:
- Do wszystkiego jest dostęp "z myszki" i nie trzeba godzinami wklepywać komend w shellu.
- Nie zajmujemy pamięci i procesora olbrzymim obrazem VM. (wszystko działa szybciej)
- kod zawsze pod ręką, można o każdej chwili zajrzeć bez konieczności uruchamiania VM
- szybsze przeszukiwanie plików i wyszukiwanie fraz w plikach.
- w przypadku pracy z środowiskiem typu Aptana/Eclipse - kilkukrotnie szybsze indeksowanie i odświerzanie przestrzeni roboczej (refreshing/indexing workspace)
Wady to:
- możliwa niekompatybilność innych ustawień/konfiguracji niż wymienione
- brak CRON-a
- uwaga na nazwy tabel i kolumn w bazie! Na windowsie czy wpiszesz NazWa_TaBeLki, czy NazwaTabelki to będzie działać, a na Linuksie (produkcji) nie. Żeby działało prawidłowo na produkcji, należy ustawić ściśle zachować pisownię nazw tabel i kolumn.
Opis dotyczy uruchomienia kodu w środowisku xampp dla windows, ale podobne kroki można przeprowadzić dla innych środowisk działających na windowsie (np. ZendCE).
Instalujemy xampp i TortoiseGit
Tworzymy nowy folder w xampowym httdocs, klikamy na nim prawym myszy, wybieramy 'Git clone' i wklejamy adres repozytorium OC pobierze się cały aktualny kod.
Pobieramy i instalujemy rozszerzenie apcu (dla wersji php 5.5+) wystarczy pobrać bibliotkę odpowiednią dla Twojej wersji php. np stąd: http://pecl.php.net/package/APCu (dla xampp 1-8-1 jest to http://mazicr.wordpress.com/2012/12/28/installing-apc-for-xampp-1-8-1-windows/).
biblioteki rozpakowujemy do xampp\php\ext i dodajemy/odkomentowujemy linijkę w php.ini extension=php_apcu.dll (extension=apcu dla php 7+)
W php.ini włączamy (przez odkomentowanie odpowiednich linijek) rozszerzenie tidy extension=php_tidy.dll (upewniamy się czy php w katalogu xampp\php\ext jest tidy.dll, jeśli nie to ssamy z internetu)
W php.ini włączamy (przez odkomentowanie odpowiednich linijek) xdebuga - przyda się. W xampp xdebug jest dołączony standardowo, wystarczy go włączyć:
zend_extension = "C:\xampp\php\ext\php_xdebug.dll"
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "127.0.0.1"
xdebug.remote_port=9000
W php.ini ustawiamy short_open_tag=on
na katalogu z kodem tworzymy vhosta np. xampp.opencaching.pl. Ważne żeby miał domenę .pl albo .nl bo inaczej language.inc.php będzie źle interpretował niektóre frazy do tłumaczenia.
Do pliku: %xampp%\apache\conf\extra\httpd-vhosts.conf dodać (przy założeniu że źródła są w C:/xampp/htdocs/opencaching-pl)
<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs/opencaching-pl"
ServerName localhost.oc.pl
</VirtualHost>
Do %Windows%\System32\drivers\etc\hosts dodać
127.0.0.1 localhost.oc.pl
Przenosimy z VM kopię katalogu ocpl-dynamic-files gdzieś w dostępne miejsce, najlepiej do katalogu z kodem. Od razu ustawiamy katalog ten w tortoiseGit jako ignorowany, żeby się nie commitował i nie śmiecił na produkcji Jeśli nie masz VM, napisz do rt[- prześlemy.
Trzeba bardzo starannie przekonfigurować settings.inc.php (to jest plik, który nie podlega commitowaniu) szczególnie zwróć uwagę, żeby:
-
adresy wskazywały na Twojego vhosta,
-
wpisać poprawne dane Twojego serwera MySQL (serwer, login, haslo, nazwa bazy). dla środowiska windows zalecane jest wpisanie ip zamiast nazwy domeny ('127.0.0.1' zamiast 'localhost') (przy kofiguracji adresu serwera bazy danych) znacznie przyśpieszy działanie bazy. (związane z wyszukiwaniem w DNS)
-
$dynbasepath wskazywało na katalog ocpl-dynamic-files. Jeśli przeniosłeś go do katalogu z kodem linijka powinna wyglądać tak: $dynbasepat = DIR.'/../ocpl-dynamic-files/';
-
wygenerować klucz do map google i wkleić go do zmiennej $googlemap_key
Przykład zmian:
$config['cookie']['name'] = 'oc';
$config['cookie']['path'] = '/';
$config['cookie']['domain'] = '.localhost.oc.pl';
$absolute_server_URI = 'http://localhost.oc.pl/';
$dynbasepath = 'C:/xampp/htdocs/ocpl-dynamic-files/';
$dbserver = '127.0.0.1';
$dbname = 'ocpldb';
$dbusername = 'root';
$dbpasswd = '';
$googlemap_key = "(own key)";
$opt['db']['admin_username'] = 'root'; //username for automatic DB updates
$opt['db']['admin_password'] = '';
$short_sitename = 'OC PL';
Wyeksportować z VM i zaimportować kopię bazy (np przez phpmyadmina). Jeśli nie masz VM - patrz krok 7. Uwaga na rozmiar pliku i limity czasu wykonywania / przesyłanego pliku ustwione w php.ini. Może być konieczna ich zmiana, phpmyadmin wyświetla odpowienide sugestie.
Być może najszybszym, choć nie za bardzo wygodnym sposobem importu plików jest import zrzutu bazy z konsoli windowsowej:
c:\>cd c:\xampp\mysql\bin
c:\>mysql.exe -u root --password
mysql> CREATE DATABASE ocpl
mysql> USE ocpl
mysql>source filename.sql;
}}}
### krok 10
C:\xampp\mysql\bin\my.ini na samym końcu sekcji [mysqld](małpka]opencaching.pl) dodajemy:
lower_case_table_names=2
### krok 11
Restartujemy apacha przez xampp control pannel.
Virtual Machine (VM):
(EN) Installation and usage - brief description
(PL) Przygotowanie środowiska dev.
(EN) The "Making of"
(EN) Requests for new VM version?
(PL) Wskazówki dla Windowsowców
Setup instructions without VM:
Tips for developers:
(EN) Coding style
(EN) People and their duties
(PL) Praca z repozytorium
(PL) Wprowadzenie do kodu OCPL