WAMP i XAMPP do kosza? IIS Express z PHP!

Czym jest WAMP i czym jest XAMPP? XAMPP/WAMP są darmowymi, łatwymi w instalacji dystrybucjami Apache’a, zawierającymi MariaDB/MySQL, PHP i Perl. Na naszym Windowsie instalowane są serwisy odpowiedzialne za bazę danych, odpowiednią wersję PHP, Perla. Obie appki instalują nam również swój manager poprzez który otrzymujemy możliwość restartowania usług i zmiany konfiguracji. Continue reading “WAMP i XAMPP do kosza? IIS Express z PHP!” »

Czytaj więcej

Virtualbox – Shared Folder – automount – Centos 7

Właśnie konfiguruje sobie na nowo środowisko programistyczne którego częścią jest zwirtualizowany CentOS 7. Żeby testować aplikację w czasie rzeczywistym chce aby kod który piszę automatycznie był dostępny na serwerze webowym. Dodatkowo chce od uzależnić się od zewnętrznych serwerów FTP i przesyłana plików. Finalnie – ma lecieć CTRL + S i F5 w przeglądarce.

W tym celu posłużyłem się nowym tutorialem od Linuxiarza dodając do niego kilka swoich elementów (zostały uwzględnione już w tutorialu). Jednym z dodatkowych elementów bardzo pomocnych w całym tym procesie jest automount folderu z projektami. Continue reading “Virtualbox – Shared Folder – automount – Centos 7” »

Czytaj więcej

IIS + MySQL + PHP = slow response

Walczyłem wczoraj z fajnym błędem, o tyle fajnym że nie spodziewałem się go. Zainstalowałem Windows Server 2012 + IIS + PHP 5.4.5 + MySQL 5.5, wszystko elegancko skonfigurowane, MySQL na 8GB Ramu skonfigurowany na 110% w my.ini śmiga jak marzenie. 150k INSERT’ów w 0,68 sec. SELECT działa płynnie, zwraca dane jak marzenie, wszystko wygląda ok … do czasu. Uruchamiam Agility.B2B i coś taka zamuła. Samo wczytanie się strony głównej 3.8 sec i w głowie alert – ‚coś jest nie hellouł!’. Szybkie wertowanie slow.loga MySQL’a i diagnoza – baza danych działa szybko, coś z IIS’em.

# Time: 131127 14:42:04
# User@Host: agility[agility] @  [192.168.0.50]
# Query_time: 0.000977  Lock_time: 0.000851 Rows_sent: 0  Rows_examined: 0
use agility3;
SET timestamp=1385559724;
SELECT reg_Id, reg_Imie, reg_Nazwisko, reg_Ulica, reg_Nr_Domu, reg_Nr_Lokalu, reg_KodPocztowy, reg_Miejscowosc, reg_Wojewodztwo, reg_Panstwo, reg_PESEL, reg_NIP, reg_Email, reg_Usr_Id, reg_Firma, reg_Kh_Id FROM acc_user_register;
# Time: 131127 14:42:33
# User@Host: agility[agility] @  [192.168.0.50]
# Query_time: 0.000245  Lock_time: 0.000054 Rows_sent: 41  Rows_examined: 41
SET timestamp=1385559753;
SELECT * FROM agility3.acc_syn_tabele
LIMIT 0, 1000;
# Time: 131127 14:42:51
# User@Host: agility[agility] @  [192.168.0.43]
# Query_time: 0.020804  Lock_time: 0.006285 Rows_sent: 1000  Rows_examined: 1000
use agility2;
SET timestamp=1385559771;
SELECT * FROM agility2.acc_kh_kontrahent
LIMIT 0, 1000;

 

Przeglądam php.ini, zend_optimizer działa, skonfigurowany, licencjonowanie wyłączone – to nie to. Wertowanie PDO MySQL’a – aktualne, działa. I człowiek zachodzi w głowę co jest … światełka w tunelu brak. Testy wydajnościowe samej strony napisanej w PHP – odpowiedź rzędu 0.83 ms., HTML 0.34 ms. Czyli PHP ma problem na poziomie komunikacji z bazą danych. Wertowanie internetów, książki o IIS’ie i ogólnie 2h w dupkę tylko po to żeby dowiedzieć się że translacja ‚localhost’ na ‚127.0.0.1’ zajmuje IIS’owi TAK WIELE CZASU!

Finalnie wpisałem w database.ini zamiasto localhost -> 127.0.0.1 i aplikacja chodzi jak rakieta. THX MS!

Czytaj więcej

IIS Srv – MIME for file with no extension

Dziś zauważyłem dosyć ciekawe ‚niedopatrzenie’ ew. ‚błąd’ IIS’a. Dlaczego nazywam to błędem / niedopatrzeniem? – Bo na Linuxie działa. Jeżeli mamy na serwerze plik o nazwie np.: http://twoja_strona.pl/img/company_1967 czyli plik który nie zawiera w sobie rozszerzenia, a jest on np. obrazek i informujemy o tym przeglądarkę poprzez ustawienie odpowiednich parametrów header to APACHE / NginX radzą sobie OSOM i wszystko bangla. IIS natomiast wychodzi z założenia że 404 not found i dupa. Jest jednak na to obejście, i to całkiem proste. Dodajemy do IIS’a MIME o znaku kropki – (dot) – ” . ” i rozszerzenie MIME: „image/png”.

MIME

Czytaj więcej

Windows 8.1 i maszyna wirtualna

Starając się ostatnio znaleźć jak najlepszą metodę postawienia wirtualnej maszyny systemu CentOS 6.3 natknąłem się na kilka rozwiązań, mniej lub bardziej skutecznych.

Podstawowym rozwiązaniem który jako pierwszy przychodzi do głowy jest VirtualBox od Oracle. Jest to dobry pomysł, i z początku uważałem że słuszny. Napotkałem jednak kilka problemów. Pierwszym jest fakt że licencja umożliwia używanie VirtualBox’a tylko do celów testowych – niekomercyjnych. W użytku komercyjnym należy nabyć odpowiednie uprawnienia. Continue reading “Windows 8.1 i maszyna wirtualna” »

Czytaj więcej