• Ради безопасности сайтов хостеры часто отключают показ ошибок php. Даже когда мы делаем так

    error_reporting(E_ALL);

    Срабатывает не всегда. Чаще всего выходит ничего не говорящая ошибка сервера. А браузер может вообще сказать что сайт недоступен.

    Чтобы это обойти можно в .htaccess написать следующее

    php_flag display_errors on 
    php_value error_reporting E_ALL

    Кроме того эти же переменные можно попытаться выставить через php

    ini_set('php_flag display_errors','on'); 
    ini_set('php_value error_reporting', E_ALL);

    Но и это не всегда срабатывает. Если не сработало и сайт все еще не показывает ошибки то можете поискать в корне сайта файл errors.log  Если и его нет то обратитесь в хостеру. А может и не делаете вы никаких ошибок вовсе. Случается и так, но крайне редко. Как говорится: Если интерпретатор php не нашел ошибок в вашей программе, напишите в баг-репорт его разработчикам, пусть исправят ошибки в интерпретаторе)

  • Создавая мобильную версию одного крупного сервиса, задумался, а как можно ускорить загрузку страниц сайта. Придумал для себя несколько путей ускорения.

    Оптимизация скорости загрузки сайта

    • Сжатие всех данных css, js, html gzip-ом
    • Сбор всех стилей и скриптов в два соответствующих файла. 
    • Установка времени сброса кеша на большой период.
    • Сбор всех иконок и т.п. графики в один графический файл, подобно тому, как это делает bootstrap
    • Кеширование генерированных страниц в файл, дабы потом не грузить mysql для неизменяемых данных
    • Общая оптимизация кода: js желательно подключать в конце страницы. Если используются like-кнопки различных сервисов, то лучше использовать код асинхронной загрузки, так как любой js тормозит прорисовку страницы до полной своей загрузки и выполнения. 
  •  Расскажу об одном интересном способе, как показать определенную картинку если той, к которой обратился пользователь на сайте не оказалось.

    Что лучше, надпись нет изображения, или осмысленная картинка?