Dnes budeme hovořit o své strasti o server s Suhosin opravy a jak Debian Sqeeze dohodu s ním. Nyní pojďme začít malé vzdálenosti. Při instalaci php v systému balíček Debianu (pro ostatní stabilní, nemohu říci, jak je více) K tomu musíte nainstalovat suhosin a mod. Měl jsem problémy s ply psané systému php a rozhodnutí pro kardinalnoto ladění aplikací v systému a získat opravu pro bezpečnost a tak ušetřit bolesti hlavy zprávu zpět vývojáři. Obecně mohu směle říci, že to byl jeden z nejvíce pošetilé rozhodnutí nikdy mě. Další moduly snap-on zpět PHP5-Suhosin obnovit webový server a Jejda nosníků – patch je stále načten. Po krátkém průzkumu zjištění, Tento balíček je zkompilován a s Pacha přímo v kódu, což znamená, že nebude vypnout nebo odstranit, pokud prekompilira kód znovu bez oříšků. Rozhodnout, že budete dr″pna a prekompiliram do balíčku deb. Udělali dělat jste apt-get source php5 táhne mě tento zdrojový kód, razpaketirva a tak dále. Tady perfektní nápad stáhnout odřízne z balíčku odstranit buráky a znovu jej zkompilovat debianski balíček plus dva malé optimalizace pro kompilaci. Řečeno a uděláno – Odstranil jsem obrázek z patch Debian/patches/Suhosin.patch Odstranil jsem ho nehrál Debian/patches/série. Zde vše jasně a bez problémů. Spusťte znovu zkompilovat balíček s zrušení sestavení a jak jsem očekával můj objeví kompilace z důvodu chybějící záhlaví. Samozřejmě bude takové nedostatky – Já jsem s debian netinstall. Opravit vaše hloupost opravdu rychle uvolnit znovu kompilace, v jednom bodu premiér znovu pouze, To je divný bug v Zend / zend_stream. h nebo c nevím přesně (Je-li dohoda může později zkontrolovat přesně který soubor a řádek jsem mluvil s). Po nedoumâvane co se děje a proč k čertu může rachot v Zend Core – tam, kde neměl rachot na pro žádný důvod a poněkud delší studie zjistil, že tento problém je poměrně vzácná a není mnoho signálů pro něj. Mám podezření, že některý z oprav v zdroj je špatně, ale teď nemám žádné nervy k ověření. Hmmmmm divný Super divný. Téměř jsem se rozhodli sestavit čistě php, ale rozhodl jsem se vyzkoušet zrcadla dotdeb Podívejme se, co se tam stane. Kompilace tam zemřel nějaký divný závislostem, ale přešli na problémy v hlavní části. Což je pochopitelně byly pryč 30-40 opravy, které byly v balíčku stabilní. Po několika dlouhých a neúspěšných pokusech, které pokrčil jsem Stáhnul jsem vanilkový balíček a kompilována s téměř debian lyžařské možnosti s myšlenkou přepsat své současné instalaci a nainstalovat nové balíky z ptačí krmítko můžete mít chování balíček nainstalovaný v úložišti (asi jen další obosobno ani moudré rozhodnutí). Podle očekávání bez jakékoli opravy instalace proběhla hladce. To je výstup pěkné config souboru.:
#! /bin/sh
#
# Created by configure
CFLAGS='-g -O2 -fPIC -Wall -fsigned-char -fno-strict-aliasing -gstabs' \
CXXFLAGS='-g -O2' \
'./configure' \
'--with-apxs2=/usr/bin/apxs2' \
'--prefix=/usr/local/php5' \
'--disable-cgi' \
'--with-config-file-path=/etc/php5/apache2' \
'--with-config-file-scan-dir=/etc/php5/apache2/conf.d' \
'--build=x86_64-linux-gnu' \
'--host=x86_64-linux-gnu' \
'--sysconfdir=/etc' \
'--localstatedir=/var' \
'--mandir=/usr/share/man' \
'--disable-debug' \
'--with-regex=php' \
'--disable-rpath' \
'--disable-static' \
'--with-pic' \
'--with-layout=GNU' \
'--with-pear=/usr/share/php' \
'--enable-calendar' \
'--enable-fileinfo' \
'--enable-hash' \
'--enable-json' \
'--enable-sysvsem' \
'--enable-sysvshm' \
'--enable-sysvmsg' \
'--enable-bcmath' \
'--with-bz2' \
'--enable-ctype' \
'--without-gdbm' \
'--with-iconv' \
'--enable-exif' \
'--enable-ftp' \
'--enable-dbase' \
'--with-gettext' \
'--enable-mbstring' \
'--with-onig=/usr' \
'--with-pcre-regex' \
'--with-mysql=shared,mysqlnd' \
'--with-mysql-sock=/var/run/mysqld/mysqld.sock' \
'--with-mysqli=shared,mysqlnd' \
'--enable-pdo=shared' \
'--with-pdo-mysql=shared,mysqlnd' \
'--with-pdo-odbc=shared,unixODBC,/usr' \
'--with-pdo-pgsql=shared,/usr/bin/pg_config' \
'--with-pdo-sqlite=shared,/usr' \
'--with-pdo-dblib=shared,/usr' \
'--enable-phar' \
'--enable-shmop' \
'--enable-sockets' \
'--enable-dom' \
'--enable-wddx' \
'--enable-tokenizer' \
'--with-zlib' \
'--with-kerberos=/usr' \
'--with-openssl=/usr' \
'--enable-soap' \
'--enable-zip' \
'--with-mhash=yes' \
'--with-exec-dir=/usr/lib/php5/libexec' \
'--with-system-tzdata' \
'--without-mm' \
'--with-readline=/usr' \
'--without-sybase-ct' \
'--without-sqlite' \
'--without-sqlite3' \
'--without-mssql' \
'--enable-pcntl' \
'--enable-inline-optimization' \
"[email protected]"
Tato konfigurace je podobná té, která sestavení dotdeb. Důvody a co je nejdůležitější prefix volby, kde budete mít soubory knihovny php. To a jindy upravit podle vašeho systému, takže nemáte pocit kompilaci tím, že mění způsob,.