Від навколо 2 тижнів php 5.3 Введіть історія, повільно, але вірно. 11 оголосив про закінчення його обслуговування, і він буде відтворюватися просто патчі безпеки для 1 рік. В цілому, PHP 5.4 проходить поетапно і старий стабільний PHP 5.5 стає стабільним, яка є добрим веселощів, тому що ви все ще частина доповнень і плагінів php не коректно повністю але версії 5.5 є досить нове, тому я утримаюсь від міграції до неї.

Припустимо, з моєї міграції до 5.4 за 5.3. Раніше я написав на інформація для застарілих функцій, ті, що змінили моє весь особистості і тих, хто вже не має підтримувати мати не драми з обох сторін чи це буде початок "або" не 😉 тому я вибрав сьогодні вранці годину для запуску міграції навколо 7 як вона стала, що існує мінімальний біль під час міграції якщо ти не йти гладко. На мій подив величезні все пройшло більш гладко – ви зібрали PHP 5.4.17 Я почав apache і Oh небеса, це все, що там. Побіжний погляд через журнали не рев depricated або невідомих функцій – Мабуть, хлопці зробили свою справу добре. Потім я тільки повинен prekompiliram та доповнення, які складаються з старий API як APC, RAR і т. д.. Другий перезавантаження і все засинає. Окремо, очікувати поліпшення продуктивності, тому що скрізь люди вказують big toe лотки, що показує як PHP 5.4 споживає менше оперативної пам'яті і виконує сценарії швидше.

Кілька днів тому вийшов XAMPP 1.8.0 Після оновлення з версії 1.7.7 Я мав досить цікавою проблемою. PhpMyAdmin, не моє відкриття і izg″rmâvaše з 403

Доступ заборонено!


Нова концепція безпеки XAMPP:

Доступ до Запитаний об'єкт доступна тільки з локальної мережі.

Цю настройку можна налаштувати у файлі “httpd-xampp.conf”.

Тепер я відкрив httpd-conf xampp які мені.. розташований у / opt/lampp/д/екстра /, на перший погляд, здавалося, все чудово. Правила для локальної мережі були штрафу. Крім того, я б відкрити локальний. WTF ??? Я подивився в журналі і побачити, що мої access відрізаний від konfiguaciâta. Ось речі вже ahnaha мене і, чесно кажучи роду трохи удачі я знайшов проблему. След като преглеждах httpd.conf-а видях в Allow/Deny клаузите един последен ред Все, що вимагають надано. Ох до Eureka. Це новий механізм контролю, яка увійшла в Apache 2.4. x. Це дає доступ або відмовляється від таких все добре, в основному наслідували дозволити/заборонити функціональність :). За да поправим проблема добавяме Require all granted в директивите за папката /opt/lampp/phpmyadmin. Після зміни в мене має такий вигляд:

<Реєстр “/Opt/lampp/phpmyadmin”>
AllowOverride AuthConfig межа
Наказ дозволити,заперечувати
Дозвольте від всіх
Все, що вимагають надано
</Реєстр>

 

Ви завжди можете спробувати інший divoti, Наприклад, щоб перейменувати папку phpmyadmin щось інші і не треба псевдонім для. Але це некрасиво і не дуже значущим 🙂

p. s просили мене, чому я використовую XAMPP і не чистого встановлення всіх компонентів, як це моя Debian народився – отговорът е много много простМЪРЗЕЛ. Мързи ме да напиша няколко команди после да си пипна конфовете и прочие. Доста по лесно е сваляш целия пакет разархивираш и палиш 😉

Посилюється Zemanta

Debian OpenLogo

Днями мій друг пише мені що я мав проблеми з Debian -мій сервер на. Його не саме зберігається більше, ніж sessiite 30 Незалежно від того, скільки хвилин, щоб налаштувати Session.gc_maxlifetime. В основному проблема в тому, що Debian вирішили переписати проведення засідань замість збирач сміття-і почати один cron кожні 9 і 39 хвилин, що очищає старого сесій. Він є in/etc/cron.d/php5

в цілому, sempličk скрипт, який в свою чергу запускає/usr/lib/php5/maxlifetime і змінної як довго життя cookie, що є 1440 секунд або 24 хвилин звідси там, 😉 2 параметри або щоб зупинити корони і тим самим припинити автоматичне очищення, яка пізніше може перебудувати php. ini-файл або прямо в скрипті змінити життя довговічність сесій з змінної Макс. Я особисто віддаю перевагу другий варіант. Досить акуратний загальної, але є один недолік – Якщо перезаписати файл зміни будуть втрачені яких є те, що клопітно.

PS. Тепер, коли я думаю про це, ймовірно, якщо визначено десь ще місце її зберігання інформації php за допомогою seiinata повинні йти за рамки сценарію і, таким чином, щоб використовувати знову під час нормального сеансу не перериваючи грубий.

ini_set('session.gc_maxlifetime', 14400);
 ini_set('session.gc_probability', 1);
 ini_set('session.gc_divisor', 100);
 session_save_path(APP_PARENT_DIR . '/sessions');

Посилюється Zemanta

Сьогодні ми будемо говорити про своїх смутку про сервер з Suhosin патч і як Debian Sqeeze угода з ним. Тепер давайте почнемо невеликій відстані. Під час інсталяції php в системі пакунків Debian (стабільний для інших, я не можу сказати, як це більше) До нього необхідно встановити suhosin і мод. Я мав проблеми з системою Шарова написана php і я прийняв рішення для kardinalnoto зробити налагодження додатків в системі та відзвітувати розробник отримати патч для безпеки і таким чином врятувати себе головні болі. Взагалі можу сказати, сміливо що це була одна з найбільш нерозумно ухвалених коли-небудь мені. Наступний скасувати оснащення на PHP5-Suhosin скидання веб сервер і на жаль промінь – -патч ще завантажується. Після дуже короткого обстеження виявлено, Цей пакунок зібрано і з Pacha безпосередньо в коді, це означає, що вона не буде вимкнути або видалити, якщо ви prekompilira код заново без арахіс. Вирішіть, що ви будете dr″pna і prekompiliram deb-пакета. Зробили робити ви apt-get джерело php5 тепло ніби підносили мене цей вихідний код, razpaketirva і так далі. Ось ідеальний ідеєю, щоб завантажити Sorsa пакета для видалення на арахіс і скомпілювати його знову debianski пакет плюс два невеликих оптимізацій для компіляції. Сказано і зроблено – Я видалив зображення з патч Debian/patches/Suhosin.Patch Я видалив йому не грати Debian, патчі, серія. Тут все ясно і без проблем. Тоді я запускаю переконфігурувати пакунок з debuild і як я і чекав мого POPs компіляції через відсутні заголовки. Звичайно, там буде такого дефіциту – Я з debian netinstall. Виправити вашу дурість реальних швидкого звільнити знову компіляції, в один момент прем'єр-міністр знову тільки, Це дивне помилка у Зенд / zend_stream. h або c точно не пам'ятаю (Якщо угода пізніше можна перевірити саме який файл і яку рядок я розмовляв). Після це nedoumâvane те, що відбувається і чому пекло можна гул у Зенд Core – де не повинен гул на, бо немає підстав і дещо більше часу навчання виявлено, що ця проблема є досить рідкісним і не багато сигнали для нього. Я підозрюю, що будь-який з латки у джерелі є неправильним, але тепер у мене немає нерви для перевірки. Хм дивні дивні супер. Я майже вирішив узагальнити чистого php, але я вирішив спробувати дзеркал dotdeb Давайте подивимося, що буде відбуватися там. Компіляція померло через деякі дивні залежностей, але затушовувати проблеми в основній частині. Який, у свою чергу, це зі зрозумілих причин вони не було 30-40 патчі, що були в пакунку стабільний. Після кількох довгих і невдалих спроб я потиснув плечима я завантажив ванільний пакет і складена це з майже debian скі параметри з ідеєю, щоб переписати моєї поточної інсталяції і встановлювати нові пакунки з Годівниці для птахів може у вас поведінку пакета встановлена з репозиторію (ймовірно, просто ще один obosobno не мудрі рішення). Як очікується, без будь-яких патчі установка пройшла гладко. Йдеться про вихід з моїх конфігураційний файл приємно.:

#! /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]"

Ця конфігурація схожа компілювання в dotdeb. Як найголовніше-це префікс варіант, де ви будете отримувати файли з php бібліотек. Него както и другите пъти ги коригирайте според вашата система така че да не се усети компилацията с промяна на пътищата.

Посилюється Zemanta

Vector logo of the PHP programming language wi...

Днес ще драсна едно леко четиво за php cache на html. Тут ми говоримо про кешування виведення наш код і не так, як я Написав в готівку на skritpovete код операції рівні з eAccelerator. Так речі – Давайте нагадати собі про швидку роботу з php-it. Подати запит веб-сервер-a ни той приема параметрите който подаваме след това той ги подава на php скрипта той се компилира и плюе резултат в html вариант. Това е в доста общи линии. Що таке наша ідея тут над запити, над великі блоки або не настільки великий, блоків, як прямих нічия соломкою після компіляції виводу. Преимуществата са очевиднинамаляна на времето за изпълнение, по малко натоварване и потребление на ресурси. Като цяло не е откриване на топлата вода нито е нещо кой знае колко сложно. Є кілька класів для цієї мети, такі як PHP Груша Cache_Lite яка має більшу функціональність, але я думаю, що в майбутньому написати шахта з більш раціоналізація структури і мої вимоги для кешування записування. Сега ще разгледаме най аборигенския вариант с Output Control Functions. Така нека да кешираме нещо

//start cache all output after that will be saved

ob_start();

//generate output

echo 'Some dynamic output';

echo 'Some other dynamic output ...';

//assign output into variable

$var=ob_get_contents();

//close cache output

ob_end_flush();

Горния код е тривиален но нека да обясним какво стана. Първо декларираме от коя част в кода започва кеширането. Потім ви генерувати більше стандартний спосіб код завершення. Потім створеної приєднується змінна, яка буде доступна пізніше, будь то в файл або під час засідань, це ваше рішення. Накрая изчистваме и прекратяваме кеширането. Съвсем тривиална операция ако да речем геенрирането на кеша минава през огромни блокове от код така можем да спестим доста процесорно време като кешираме за известно време или за една сесия. Вече всичко опира то това какво искате дали да е общодостъпен кеша или да е достъпен за различен потребител.

Посилюється Zemanta