Have You Tried IT ?

Information Technology from scratch

Instalacja PEAR na serwerze

Dodano przez Kategoria: Linux

PEAR Logo

PEAR

PEAR to rozszerzenie do PHP, które znacznie ułatwia prace. Osobiście głównie wykorzystuje go do rozsyłania e-maili, oczywiście do świadomych subskrybentów różnych newsletterów. W porównaniu z tradycyjną funkcją mail() w PHP, masowa wysyłka e-maili za pomocą PEAR nie powinna stanowić żadnego problemu i jest o niebo szybsza.

Instalacja w systemie linux (CentOS) przy użyciu menadżera zarządzania pakietami:

yum install php-pear*

Po zakończeniu instalacji PEAR powinien się zainstalować w lokalizacji: /usr/share/pear

Następnie należy edytować plik konfiguracyjny php.ini. Mniej więcej w okolicach 40% pliku powinien znajdować się się część oznaczona jako Paths nad Directories. Tutaj należy dodać wpis o lokalizacji PEAR:

;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;

.
.
.

; # PEAR include
include_path = ".:/usr/share/pear/"

Po zapisaniu zmian należy zrestartować serwer Apache

service httpd restart

# lub

/etc/init.d/httpd restart

Dodatkowo w przypadku obecności Pleska na serwerze, dla każdej obecnej domeny należy dokonać edycji pliku konfiguracyjnego Apache httpd.include. Nie wiem jak to wygląda na innych konfiguracjach serwerów, natomiast Plesk tworzy dla każdej domeny oraz subdomeny oddzielny taki plik konfiguracyjny w katalogu conf. Ponadto Plesk przy każdej swojej aktualizacji, bądź innej zmiany konfiguracji generuje automatycznie plik httpd.include i ostatecznie ten plik ma nazwę postaci np. takiej 12990884850.71565400_httpd.include. W związku z tym katalogu conf może znajdować się kilka takich plików, a Apache korzysta z ostatnio utworzonego według daty.

Rozwiązaniem może być próba edycji tego pliku, lecz za każdą aktualizacją, bądź zmianą konfiguracji należałoby to powtarzać, co jest jakby bez sensu. Poza tym już na początku każdego takiego pliku programiści Plesk umieścili taką oto informację:

# ATTENTION!
# DO NOT MODIFY THIS FILE OR ANY PART OF IT. THIS CAN RESULT IN IMPROPER PLESK
# FUNCTIONING OR FAILURE, CAUSE DAMAGE AND LOSS OF DATA. IF YOU REQUIRE CUSTOM
# MODIFICATIONS TO BE APPLIED TO THE CONFIGURATION, PLEASE, PERFORM THEM IN THE
# FOLLOWING FILE(S):
#/var/www/vhosts/domenasrutututu.pl/conf/vhost.conf
#/var/www/vhosts/domenasrutututu.pl/subdomains/images/conf/vhost.conf

Tak więc jasno z tego wynika, że należy stworzyć sobie dla każdej domeny oraz subdomeny (w moim przykładzie images) plik vhost.conf i tam umieścić swoje modyfikacje. Plik vhost.conf jest później includowany w każdym automatycznie generowanym pliku konfiguracyjnym. Mój plik vhost.conf dla tej domeny ma w takim razie postać:

<Directory /var/www/vhosts/domenasrutututu.pl/httpdocs>
php_admin_value open_basedir /var/www/vhosts/domenasrutututu.pl/httpdocs/:/tmp/:/usr/share/pear/
</Directory>

Najistotniejsze jest tutaj właśnie dopisanie ścieżki do PEAR :/usr/share/pear/  dla  open_basedir.
Dzięki temu, aby w swoim skrypcie php skorzystać z któregoś z rozszerzeń PEAR wystarczy dołączyć go w ten sposób:

include('Mail.php');
include('Mail/mime.php');

Na koniec pozostaje tylko przeładowanie pliku konfiguracyjnego dla danego hosta

/usr/local/psa/admin/sbin/websrvmng -u --vhost-name=domenasrutututu.pl

Można również użyć komend

/usr/local/psa/admin/sbin/websrvmng -a -v

lecz trzeba się z tym liczyć, że powyższa komenda przeładuje pliki konfiguracyjne dla wszystkich domen zainstalowanych na serwerze.

3 komentarze

  1. Pingback: PEAR i safe_mode — Have You Tried IT

  2. Pingback: Błąd: sendmail returned error code 127 — Have You Tried IT

  3. Pingback: Zmiana konfiguracji serwera dla /var/www/vhosts/default/ | Have You Tried IT

Dodaj komentarz

XHTML: Dozwolone znaczniki: <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="">