Archiwa
Kategorie
Reklama

DreamHost — jak zmodyfikować php.ini

Zwy­kle dostawca hostingu usta­wia nam php.ini w spo­sób „uni­wer­salny”, czyli pasu­jący teo­re­tycz­nie wszyst­kim a prak­tycz­nie nikomu. A tu potrze­bu­jemy zmie­nić coś, ale prze­cież dostawca nas nie wpu­ści do swo­jego /etc!

Co zro­bić?

Załóżmy, że naszą domeną jest test.com i jej pliki są na kata­logu ~/test.com.

Na począ­tek two­rzymy odpo­wiedni kata­log i kopiu­jemy ory­gi­nalny php.ini do siebie.

cd test.com
mkdir cgi-bin
cp /etc/php5/cgi/php.ini cgi-bin/php.ini

Teraz two­rzymy plik wrappera

vi ~/test.com/cgi-bin/php-wrapper.cgi

i wkle­jamy treść

#!/bin/sh
exec /dh/cgi-system/php5.cgi $*

Trzeba jesz­cze usta­wić odpo­wied­nie prawa dostępu

chmod 755 cgi-bin
chmod 755 ./cgi-bin/php-wrapper.cgi
chmod 640 ./cgi-bin/php.ini

I wska­zać ser­we­rowi, że ma pobrać nasz plik php.ini. A by to zro­bić należy wpi­sać te linie w plik ~/test.com/.htaccess :

Options +Exec­CGI
AddHan­dler php5-cgi .php
Action php-cgi /cgi-bin/php-wrapper.cgi
Action php5-cgi /cgi-bin/php-wrapper.cgi

Od tej chwili php powi­nien pra­co­wać według Waszego pliku ini.

Mnie na przy­kład było to potrzebne do usta­wie­nia time­outu na zapy­ta­nia do MySQL. W jed­nym z moich ser­wi­sów nie­za­koń­czone pyta­nia zamu­lały PS i żarły pamięć.

Wystar­czyło usta­wićw pliku php.ini

mysql.connect_timeout = 10

i każde pyta­nie wiszące dłu­żej niż 10 sekund jest prze­ry­wane. Ponie­waż nor­mal­nie każda strona jest gene­ro­wana w cza­sie poni­żej 1 sekundy, 10 sekund suge­ruje, że coś się zatkało i nie warto już czekać.

Od razu zuży­cie pamięci zna­cząco spadło.

3 odpowiedzi na „DreamHost — jak zmodyfikować php.ini

  • eider says:

    A wystar­czyło: ini_set('max_execution_time','10');

  • Paczko says:

    Widocz­nie mia­łeś prawa admina na tym ser­we­rze … w ddl2.pl takich praw nie ma nikt i nie da się ścią­gnąć php.ini ani tym bar­dziej wydać komendy …

  • Bogdan says:

    Ależ te komendy można zastą­pić odpo­wied­ni­kami w FTP!
    A wzor­cowy php.ini można wziąć sobie skąd­kol­wiek. Jak potrzeba, mogę wysta­wić na serwerze.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

*

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>