Niezalogowany [ logowanie ]
Subskrybuj kanał ATOM Kanał ATOM    Subskrybuj kanał ATOM dla tagu apache Kanał ATOM (tag: apache)

Autor wpisu: sokzzuka, dodany: 07.05.2010 12:17, tagi: apache, php

Kilka razy zdarzyło mi się już, że skrypt nad jakim miałem pracować musiał mieć własną nazwę hosta. W związku z tym, że głównie pracuje na WAMP-ie, ustawienie vhosta dla tego skryptu wiązało się z tym, że traciłem możliwość wejścia na standardową stronę główną. Gdzie są różne przydatne rzeczy typu phpMyAdmin czy phpconfig() etc.

Jednak jest sposób na to żeby wilk był syty i owca cała, mianowicie należy sobie skonfigurować vhosty rozróżniane po nazwie (NameVirtualHost).

Jak to zrobić ?

Należy dopisać do apache-owego configa następujące linie:

NameVirtualHost *:80
       <VirtualHost *:80>
       ServerName moja_aplikacja.local
       DocumentRoot "D:/www/moja_aplikacja/public"
       </VirtualHost>
       <VirtualHost *:80>
       ServerName localhost
       DocumentRoot "D:/www/"
       </VirtualHost>

Należy również dodać w pliku \Windows\System32\drivers\etc\hosts wpisy dla każdego nowego adresu wg wzoru:

127.0.0.1 moja_aplikacja.local

Autor wpisu: stormfly, dodany: 24.09.2009 22:18, tagi: apache

Udało mi się zdiagnozować ciekawy przypadek kiedy regułka rewrite nie działa tak jakbyśmy się tego spodziewali. "Winą" za to obarczam Apache, który posługuje się magicznymi sztuczkami. Utwórzcie sobie przykładowo plik rewrite.php np. ze skryptem: a następnie uruchomcie w...

Autor wpisu: eRIZ, dodany: 08.08.2009 01:27, tagi: apache, php

Nie da się temu zaprzeczyć - Erlang ma dość dziwną składnię, momentami naprawdę się ciężko połapać po siedzeniu w językach typowo klamerkowych (vide: C, PHP, JS, etc), ale możliwości napisanych w nim aplikacji naprawdę poraża.

I jak by tu nie próbować czegoś nowego? Ejabberd (demon Jabbera) świetnie się sprawuje, przez samą konstrukcję języka, w którym został napisany, koder ma dostęp do potężnego środowiska, które poradzi sobie w naprawdę trudnych warunkach. Dla przykładu - ktoś się pofatygował, aby przetestować Apache w porównaniu do YAWS. Wyniki - szczerze mówiąc - mnie zszokowały…

Autor wpisu: eRIZ, dodany: 27.07.2009 01:12, tagi: internet, apache, php, skrypty

mod_rewrite, rewriting, przyjazne URL-e/adresy, maskowanie, przepisywanie, nazw jest sporo. Zresztą, najpopularniejsza pochodzi od swojego protoplasty - czyli mod_rewrite powstałego pod skrzydłami Apache’a jako moduł. Teraz właściwie standard, jeśli chodzi o nowoczesne strony www - nie tylko ze względu na wygląd, ale i (jak ptaszki ćwierkają, choć jest to wątpliwe wobec oficjalnych źródeł) SEO.

Jak zwał, tak zwał, adres http://example.org/kawalek/adresu wygląda dużo estetyczniej i jest łatwiejszy do zapamiętania niż potworki typu http://example.org/?kawalek=adresu&i=jeszcze&inny=fin

Niby nie jest to takie skomplikowane, ale niektóre sytuacje wydają się nie do rozwiązania.

Uwaga, notka tasiemcowata, więc jest spis treści. Polecam się również uzbroić w odpowiednią ilość czasu. ;]

Autor wpisu: Athlan, dodany: 19.02.2009 14:19, tagi: apache

Wiele razy zdarzało mi się, że mój serwer padł całkowicie lub przerywał żądania. Wówczas był niedostępny, a zarobki generowane z serwisów diametralnie spadały. Co więcej… użytkownicy poczuli niestabilność maszyny. Dziś po odpowiedniej optymalizacji kodów aplikacji pady są rzadkością, ale wolę się ubezpieczyć przed niespodziewanym downem serwera.

Problem można rozwiązać w prosty sposób: cyklicznie uruchamiany program bash‘a przez crona będzie odpowiadał za poprawne działanie usługi apache. Listing, który zaprezentuję łączy się z adresem url odwołującym się do naszego serwera za pomocą wget, a następnie wynik działania (response body) zapisze do pliku tymczasowego. Jeżeli plik istnieje oraz ma rozmiar niezerowy, oznacza to, że serwer działa poprawnie. Jeżeli plik nie istnieje, bądź jego wielkość jest równa zero z, oznacza to, że trzeba zrestartować usługę apache, bo nie odpowiada. Zaraz przed zakończeniem programu, plik tymczasowy powinien zostać usunięty. Pozwoliłem sobie opublikować mały program służący do automatycznego restartu usługi apache.

Aby nasz program poprawnie działał, trzeba zastanowić się nad trzema istotnymi rzeczami:

  1. Ile prób połączenia ma wykonać wget oraz jakie mogę być timeouty.
  2. Czy adres url, do którego się odwołujemy będzie zawsze dostępny w przypadku poprawnego działania usługi apache.
  3. Jaki powinien być interwał uruchamiania napisanego programu.

Na moim serwerze program uruchamia się co minutę, próbuje połączyć się ze stroną dwa razy, a maksymalny czas oczekiwania na odpowiedź przy każdej z prób wynosi 10 sekund.

Program zapisany jest pod /root/check_apache.sh, a regułka uruchamiania w cronie wygląda następująco:

* * * * *       bash /root/check_apache.sh

Przedstawiony problem można rozwiązać na wiele sposobów, przedstawiłem ten najbardziej oczywisty.

Autor wpisu: SongoQ, dodany: 04.02.2009 07:46, tagi: php, apache, sql

Przeprowadziłem kilka testów szybkości odczytu z pliku i tabel typu: MEMORY, MyISAM.

Jak był przeprowadzany test:

Test przeprowadzałem na Ubuntu Dapper (apache2, php5.1.x, MySQL 5.0.22) na laptopie, więc wiele rzeczy mogło wpłynąć na na nieprawidłowość testów.

Test podzieliłem na kilka etapów:

  • z włączonym cache zapytań
  • z wyłączonym cache zapytań
  • z pomiarem połączenia z bazą danych

Odnośnie ilości wywołań testu, to był wykonywany 1000 razy, liczone były pojedyńcze czasy testu, a następnie sumowane i liczona z tego średnia testu. Jako danych testowych użyłem wygenerowanego ciągu znaków o długości około 65 KB.

Wyniki:

Odczyt z pliku:

Do odczytu z pliku użyłem funkcji: file_get_contents() Średni czas odczytu jaki uzyskałem to: 0.000357507705688 (szczegółowe informacje)

Odczyt z bazy danych:

Do odczytu z bazy użyłem funkcji mysql_* (połączenie, wybór bazy, wykonanie zapytanie i zwrócenie rekordu). Tabela zawierała 1 rekord z id i polem w którym był zapisany taki sam ciąg znaków jak w przypadku pliku. Dlaczego nie więcej? Chciałem wyeliminować czas jaki będzie potrzebny na przeliczenie jaki rekord ma zostać zwrócony.

Wyłączony zapis cache w MySQL i czas połączenia z bazą pominięty:

Tabela MyISAM - średni czas to: 0.00516110825539 (szczegółowe informacje) Tabela MEMORY - średni czas to: 0.00368802952766 (szczegółowe informacje)

Widać, że odczyt z pliku ma przewagę nad odczytem z bazy danych, a czasy odczytu z tabel typu MyISAM i MEMORY są bardzo do siebie zbliżone.

Włączony zapis cache w MySQL i czas połączenia z bazą pominięty:

Tabela MyISAM - średni czas to: 0.00179107260704 (szczegółowe informacje)

Czytaj dalej tutaj (rozwija treść wpisu)
Czytaj dalej na blogu autora...

Autor wpisu: Jaroslaw Mężyk, dodany: 16.09.2007 18:10, tagi: php, apache

Problem Po wpisaniu w Google zapytania jak wybrać domenę, otrzymamy w przybliżeniu 1,320,000 wyników. Jak widać, jest dość popularne zagadnienie. Każdy, kto zakłada własną stronę, może dowiedzień się jak wybrać piękną, unikalną domenę, sugerującą korzyści, jakość produktu, łatwo wymawianą, łatwą do zapamiętania… bla bla bla. Część z tych artykułów ociera się już o bełkot, choć można [...]
Wszystkie wpisy należą do ich twórców. PHP.pl nie ponosi odpowiedzialności za treść wpisów.