Have You Tried IT ?

Information Technology from scratch

Błąd: sendmail returned error code 127

Kategoria: Linux

Po zainstalowaniu i skonfigurowaniu rozszerzenia PEAR przyszła pora na wykorzystaniu jego możliwości w akcji. Na pierwszy rzut poszło rozszerzenie do obsługi poczty, które diametralnie przyspiesza i ułatwia masowe rozsyłanie e-maili w PHP. Tak więc na początek należałoby przetestować korzystając z dołączonego do manuala przykładu:

<?php
include('Mail.php');

$recipients = 'bogumil@co-ma-dostac.com';

$headers['From']    = 'marian@co-wyslal.com';
$headers['To']      = 'bogumil@co-ma-dostac.com';
$headers['Subject'] = 'Test message';

$body = 'Test message';

$params['sendmail_path'] = '/usr/sbin/sendmail';

// Create the mail object using the Mail::factory method
$mail_object =& Mail::factory('sendmail', $params);

$msg = $mail_object->send($recipients, $headers, $body);

if ($msg == true) {
 echo '<h3>Wiadomość testową wysłano pomyślnie.</h3>';
} else {
 echo '<h3>Wiadomość nie wysłana!</h3><p>Błąd: ' . $msg . '</p>';
}
?>

Czytaj dalej →

PEAR i safe_mode

Kategoria: Linux | 1 odpowiedź

Tzw. tryb bezpieczny w PHP (safe_mode) m.in. wymusza sprawdzanie właścicieli i pozwala na wykonywanie operacji tylko wtedy, gdy wykonywany plik i zasób, na którym ma być wykonana operacja należą do tego samego właściciela. Instalacja PEAR na serwerze odbywała się z konta root i on jest właścicielem plików źródłowych. Natomiast właścicielem plików regularnych dla podpiętych na serwerze domen jest już zupełnie inny użytkownik. Dlatego, gdy tryb safe_mode jest włączony na serwerze przy próbie użycia rozszerzeń PEAR pojawia się mniej więcej taki błąd:

Warning: require_once(System.php) [function.require-once]: failed to open stream: No such file or directory in /var/www/vhosts/domenasrutututu.pl/httpdocs/peartest.php on line XX

Fatal error: require_once() [function.require]: Failed opening required 'System.php' (include_path='.:/usr/share/pear/') in /var/www/vhosts/domenasrutututu.pl/httpdocs/peartest.php on line XX

Czytaj dalej →

Instalacja PEAR na serwerze

Kategoria: Linux | 3 komentarze

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
Czytaj dalej →

Instalacja mcrypt w CentOs 64-bit

Kategoria: Linux

Aby korzystać ze skryptu Magento niezbędna jest biblioteka mcrypt do PHP. Jako że moja konfiguracja serwera (CentOs + Plesk) nie posiadała tej biblioteki w standardzie, należało ją doinstalować samodzielnie.

Najprostszym rozwiązanie będzie wykorzystanie menadżera pakietów  yum

yum install php-mcrypt

Czytaj dalej →

Aktualizacja PHP na CentOs

Kategoria: Linux

Na jednym z serwerów używam systemu operacyjnego CentOs standardowo z zainstalowanym Apache z obsługą PHP i MySQL. Aktualizacja PHP do aktualnej wersji z wykorzystaniem yum nie jest zbyt skomplikowane.

Na początek należy rozpocząć od aktualizacji bazy repozytorium Atomic:

wget -q -O - http://www.atomicorp.com/installers/atomic.sh | sh

wget to program, który służy do pobierania plików.

  • q (–quiet) – działa po cichu;), nie wypisuje nic na ekranie
  • O – (–output-document) – standardowo po tym parametrze wpadałoby podać nazwę pliku do jakiego ma być zapisane pobierane źródło.  Istotny tutaj jest myślnik po parametrze. Oznacza to, że to co zostanie pobrane przez program zostanie przekazane na domyślne wyjście, w tym wypadku na ekran, a następnie za pomocą znaku | (pipe) zostanie przekazane do wykonania w bashu.

Czytaj dalej →

Problem podczas upgrade’u Plesk

Kategoria: Plesk

Po otrzymaniu nowego serwera dedykowanego postanowiłem, że rozpocznę od upgrade’u Panelu Plesk z linii poleceń.
Standardowo na początek zatrzymanie usługi psa i uruchomienie autoinstallera:

/etc/init.d/psa stop
/usr/local/psa/admin/bin/autoinstaller

Sam proces upgrade’owania Pleska troche trwa i z tego co pamiętam wymaga chyba potwierdzenia jakichś opcji w trakcie.

Jako że miałem sposobność pracowania wówczas na neostradzie, to zgodnie z prawem Murphy’ego neostrada postanowiła akurat w tym momencie się rozłączyć i zmienić sobie IP. Tak więc utraciłem łączność z tokiem procesu instalacji. Poczekałem chwile z nadzieją, że może samodzielnie się dokończy, ale nic z tych rzeczy. Przy próbie uruchomienia usługi psa i zalogowaniu się do panelu Plesk, pojawiała się masa dziwnych i nieoczekiwanych błędów, np. o braku tabel w bazie danych albo o innych problemach z plikami. Czytaj dalej →