DirectAdmin - Exim - Polskie znaki w temacie

Po domyślnej instalacji DirectAdmina na systemie Debian Lenny występuje drażliwy problem. Gdy wysyłana wiadomość zawiera polskie znaki w temacie, jest odrzucany przez MTA.

Rozwiązanie to rekompilacja Exima.
Najpierw - instalacja bibliotek developerskich

apt-get install libdb4.6-dev libperl-dev

Potem źródełka - w tym przypadku z serwera DA

wget http://files.directadmin.com/services/all/exim/exim-4.69.tar.gz
tar xvzf exim-4.69.tar.gz
cd exim-4.69/Local
wget http://www.directadmin.com/Makefile
perl -pi -e 's/^EXTRALIBS/#EXTRALIBS/' Makefile

Mała modyfikacja Makefile

HAVE_ICONV=no

Potem właściwa kompilacja

cd ..
make
make install

Na koniec skopiowanie nowo skompilowanej binarki we właściwe miejsce

cp -f /usr/sbin/exim-4.69-2 /usr/sbin/exim
chmod 4755 /usr/sbin/exim

I restart Exima

/etc/init.d/exim restart
 

Kompilacja PHP5-LiteSpeed na systemie Debian

Na początku trzeba zainstalować troszkę pomocniczych, developerskich bibliotek.

  apt-get install autoconf bison bzip2 curl g++ gcc libbz2-dev libc-client-dev libcurl4-openssl-dev libgd2-xpm libgd2-xpm-dev libgdbm-dev libldap2-dev libmcrypt-dev libmhash-dev libmysqlclient15-dev libpam-dev libqdbm-dev libsnmp-dev libxml2-dev libxslt-dev libzip-dev make mcrypt openssl patch postgresql-server-dev-8.3 unixodbc unixodbc-dev wget 

Potem w konsoli LiteSpeeda opcja kompilacji PHP.
Przykładowe parametry kompilacji:

--with-pear --with-pdo-sqlite --with-pdo-mysql=/usr/bin/mysql_config --with-pdo-pgsql=/usr/lib/postgresql/bin/pg_config --with-pdo-odbc=unixODBC,/usr --with-mysql=/usr/bin/mysql_config --with-mysqli=/usr/bin/mysql_config --with-pgsql=/usr/lib/postgresql/bin/pg_config --with-unixODBc=/usr --with-gd --with-jpeg-dir=/usr/lib --with-png-dir=/usr/lib --with-freetype-dir=/usr/lib --with-ttf --with-xpm-dir=/usr/lib --enable-exif --enable-bcmath --enable-calendar --enable-fastcgi --enable-ftp --enable-magic-quotes --enable-mbstring --enable-memory-limit --enable-shmop --enable-sockets --enable-soap --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-track-vars --enable-wddx --enable-zip --disable-posix --disable-debug --with-bz2 --with-curl --with-curl-dir=/usr/local/lib --with-gdbm --with-gettext --with-iconv --with-imap --with-imap-ssl --with-kerberos --with-litespeed  --with-ldap --with-mcrypt --with-mhash --with-mime-magic --with-openssl --with-snmp --with-xml --with-xsl --with-zlib
 

Quota w OpenVZ

Aby uaktywnić quotę na serwerze-vpsie obsługiwanym przez wirtualizację OpenVZ, na serwerze-matce należy wykonać

vzctl set 101 --quotaugidlimit 100000 --save

Po czym zrestartować VPSa poleceniem

vzctl restart 
 

Obsługa NFS w systemie Linux

Obsługa sieciowego systemu plików NFS w systemach linuksowych jest dosyć prosta.

Wystarczy podmontować zasób poleceniem

mount -t nfs adres.ip:/zasob /mnt/sciezka_montowania



Jednak czasami polecenie to może zwrócić nam następujący kod błędu:

mount: wrong fs type, bad option, bad superblock on adres.ip:/zasob,
       missing codepage or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so



Oznacza to, że w systemie nie mamy zainstalowanej obsługi NFS.
Dla systemów opartych na bazie RedHata wykonujemy polecenie:

yum install nfs-utils



Dla systemów debianopochodnych

apt-get install nfs-common


 

Autoryzacja BASIC w php-fcgi

Autoryzacja podstawowa HTTP, wg większości tutoriali dostępnych w necie, jest z poziomu PHP trywialna. Wystarczy sprawdzić zawartość zmiennych $_SERVER['PHP_AUTH_USER'] i $_SERVER['PHP_AUTH_PW'] i w razie potrzeby wysyłać cyklicznie nagłówek HTTP 401 - Unauthorized.

W przypadku, gdy PHP działa jako moduł serwera Apache (mod_php), wszystko znakomicie działa. Problem robi się wtedy, gdy nasz provider stawia na (swoje) bezpieczeństwo i PHP uruchamia w trybie CGI/FastCGI.

Może nas czekać wtedy dosyć niemiła niespodzianka - wspomniane wcześniej zmienne… mogą nie istnieć, a raczej nie być widoczne w skryptach PHP.
Zobacz dalszą część artykułu »