Архив за етитет: php

PHP, Suhosin и e107 CMS…

Тези дни реших да си поиграя със сигурността при php. След като php-то не поддържа disable_functions за всеки виртуален хост, трябваше да се намери алтернатива … И аз избрах тя да е Suhosin. След като пачнах, php-то … компилирах suhosin.so … И включих модула …

До тук всичко добре … Но като се опитах да заредя сайт, ползващ e107 CMS … Стана интересно :) В лога започнах да се появяват много функции, които бяха забранени.  Сега трябваше да вкарам всички тези функции в whitelist на този виртуален хост… Направих го … И си мислех, че всичко е наред и сайта ще си работи … Да ама не … На следващия ден ми съобщиха, че в администрационния панел липсва дясното меню … Получих достъп до админ частта … И реших да си направя експеримент. Логвам се като е включен модула менюто го няма … Изключвам модула … появява се …

Гледам логовете нищо … Прегледах малко кода на тази система, но стигнах до извода, че ще ми отнеме време за да дебъгна всичко и да разбера кое, как и защо се счупва …

И затова временно изключих модула (suhosin.so) докато тези от e107 открият проблема… Не съм им пуснал още проблема в тяхната система, но и това ще направя скоро …

Но в заключение … На НИКОИ НЕ препоръчвам тази CMS. 

Ако има развитие … Ще пиша …

Slackware current updates и PHP 5.2.13

[bg][/bg]Видях, че са се появили ъпдейти за slackware… Реших ъпдейтна :)  Но след като ъпдейтнах имах проблеми …

А те са:

1. Липсващи symlinks … libldap-2.3.so.0 (След ъпгрейда липсва) И се наложи да направя ln -s libldap-2.4.so.2.5.4 libldap-2.3.so.0 както и ln -s liblber-2.4.so.2.5.4 liblber-2.3.so.0 . След като ги направих httpd не се оплакваше, че ги няма вече … И можех да компилирам php-то.

Но и след като пуснах make на php-то имаше проблеми с компилирането … Първия, които се появи е поради обновяването на GMP до версия 5.0.1 . Бъга е репортнат за версия 5.3.2RC1,  но не го намерих за 5.2.XX

Линк към бъг PHP BUG #50990 . В моя случай реда е 1399 на php-5.2.13/ext/gmp/gmp.c , в който променяме както е описано там:

I solved replacing the outdated __GMP_BITS_PER_MP_LIMB defined constant with GMP_LIMB_BITS. The latter is present in all previous versions, and MPIR define it too.
След като оправих това продължих с make … Но тъкмо накрая се появи друг проблем .. И този пък с libpng и версия 1.4.1 …  И този път отново бъга присъства в листата на версия 5.3.X,  но не и в 5.2.XX

И там също ще трябва да редактираме един от файловете за да можем да компилираме php-то .

Бъга е документиран тук BUG #50734 . След като го промених както е описано там се компилира успешно. Реда е 142. на файл php-5.2.13/ext/gd/libgd/gd_png.c

Вече си имаме работещо php :)

Да но сега, трябва да оправим още един symlink ln -s libffi.so.4 libfftw3.so.3, че иначе няма да ни работи ImageMagick  :)

Толкова за сега :)

Magento и eaccelerator-0.9.6-rc1

Ако сте решили да минавате към eaccelerator-0.9.6-rc1 и имате клиенти, които ползват magento  НЕ ГО ПРАВЕТЕ.  Ползвайте си старата и изпитана версия на eaccelerator 0.9.5.3 докато magento оправят бъга.   

Поне при мен при версия на PHP -> 5.2.11 и eaccelerator-0.9.6-rc1, Magento(1.3.2.4) не иска да работи.

Може да погледнете за подробности тук. Има описан същия проблем като този, с които аз се сблъсках . Видях, че има и fix, но за жалост при мен не иска да работи.