Все публикации
Перенос домена (Рейтинг: +4)
Mod Rewrite
Сайт перенесен с одного домена на другой с domain.com на domain2.com
RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [R=301,1] RewriteRule ^(.*)$ http://www.domain2.com/$1
Редирект при ошибке (Рейтинг: +2)
Mod Rewrite
Перенаправление несуществующих URL на другой веб-сервер
RewriteEngine on RewriteBase / RewriteCond /your/docroot/%{REQUEST_FILENAME} !-f RewriteRule ^(.+) http://webserverB.dom/$1
Остановка сайта в работе и его индексация (Рейтинг: +7)
Mod Rewrite
Необходимо запрос любой страницы сайта отправлять на одну (будет написано что сайт временно ен доступен), но в то же время нужно оставить его открытым для поисковых машин. То есть для клиентов сайт закрыт, а для индексации - открыт.
RewriteEngine on RewriteBase / RewriteCond %{HTTP_USER_AGENT} !^yandex.* [NC,OR] RewriteCond %{HTTP_USER_AGENT} !^googlebot.* [NC,OR] RewriteCond %{HTTP_USER_AGENT} !^gaisbot.* [NC,OR] RewriteCond %{HTTP_USER_AGENT} !^rambler.* [NC,OR] RewriteCond %{HTTP_USER_AGENT} !^aport.* [NC,OR] RewriteCond %{HTTP_USER_AGENT} !^metacrawler.* [NC,OR] RewriteCond %{HTTP_USER_AGENT} !^msnbot.* [NC,OR] RewriteCond %{HTTP_USER_AGENT} !^crawler.* [NC,OR] RewriteRule ^/$ - [L,R]
Работа сайта по времени (Рейтинг: 0)
Mod Rewrite
Указание доступа к сайту по времени
RewriteEngine on
RewriteCond %{TIME_HOUR}%{TIME_MIN} > 900
RewriteCond %{TIME_HOUR}%{TIME_MIN} < 1800
RewriteRule .* - [ F ]
Запрет боту Google (Рейтинг: +4)
Mod Rewrite
Жесткий запрет посещений нашего веб-сайта для робота поисковой системы Google
RewriteEngine on RewriteCond %{USER_AGENT} Googlebot RewriteRule .* - [F] # Другой вариант возвращает вместо ошибки 403 ( FORBIDDEN ) ошибку 404 ( NOT _ FOUND ) RewriteCond %{USER_AGENT} Googlebot RewriteRule .* - [R=404]
Динамическое подключение функций (Рейтинг: +10)
ООП
Когда функций очень много их неудобно хранить все в одном файле, да и зачем подключать километр кода когда нужно воспользоваться всего лишь парой функций, собственно решение:
Cоздаем в корне папку fun в которой будут хранится наши функции, по одному файлу на каждую, имя файла должно соответствовать имени функции, для примера создадим файл test.php с функцией test
<?php function test($val1, $val2, $val3){ return $val1.$val2.$val3; } ?>
Теперь класс который будет подключать наши функции
<?php class fun{ function __call($function, $value) { include_once $_SERVER['DOCUMENT_ROOT'].'/fun/'.$function.'.php'; return call_user_func_array($function, $value); } } ?>
Теперь воспользуемся нашей функцией "test"
<?php $fun =...
Модификаторы шаблонов PCRE (Рейтинг: +5)
Регулярные выражения
Ниже перечислены все доступные на сегодняшний день модификаторы. Имя, взятое в круглые скобки, указывает внутреннее PCRE имя для данного модификатора.
i (PCRE_CASELESS)
Если этот модификатор используется, символы в шаблоне соответствуют символам как верхнего, так и нижнего регистра.
m (PCRE_MULTILINE)
По умолчанию PCRE обрабатывает данные как однострочную символьную строку (даже если она содержит разделители строк). Метасимвол начала строки '^' соответствует только началу обрабатываемого текста, в то время как метасимвол "конец строки" '$' соответствует концу текста, либо позиции перед завершающим текст переводом строки (в случае, если модификатор D не установлен). В Perl ситуация полностью аналогична. Если этот модификатор используется, метасимволы...
Фильтрация входных данных в PHP (Рейтинг: +9)
Безопасность
Фильтрация входных данных — одна из самых важных вещей, которой надо уделять внимание при разработке веб-сайта. Опытным программистам это известно, а новички пусть запомнят одну очень важную вещь:
Данным, полученным от пользователя, доверять нельзя.
Что это значит? А это значит то, что если нам нужно, чтобы пользователь ввел число, это совсем не означает, что он введет именно число. Он может ввести что угодно. И поэтому нам необходимо проверить корректность введенных пользователем данных и оградить себя от возможных вследствие этого ошибок и улучшить безопасность наших скриптов.
Обычно для этого пользуются регулярными выражениями, но начиная с версии 5.2.0, в PHP есть специальные...
Околофутбол - Недопонимание. (Рейтинг: 0)
РазноеОколофутбол - это нечто связывающее между поколениями. Эта «война» между футбольными клубами началась не вчера, и не сегодня. Это возрождения старых порядков и традиций и соединения его с более современными ведениями стилей боя, сюда входит пресловутая информационная война и уличные бои, и просто любая поддержка свой команды, будь это баннер или какая-либо кричалка. Сами околофутбольшики выделяют себя в субкультуру. Большинство ***ганов предпочитают одеваться у определённых фирм наиболее предпочитаемые: «Adidas», «Ben Sherman», «Stone Island», «Lacoste», «Nike», «Kappa» и т.д. На первый взгляд все выезды с командой и махачи незапланированные и тупые вылазки, но это не так. Несмотря не внешнюю простоту, околофутбол...
Суперглобальный массив $_SERVER (Рейтинг: +13)
PHP
Одним из важнейших предопределённых массивов является массив $_SERVER — в него PHP-интерпретатор помещает переменные, полученные от сервера. Без данных переменных сложно организовать полноценную поддержку Web-приложений. Ниже приводится описание наиболее важных элементов суперглобального массива $_SERVER.
Замечание
Просмотреть полный список элементов массива $_SERVER можно либо при помощи функции print_r(), которая распечатывает дамп массива либо при помощи функции phpinfo(), которая выводит информацию о PHP-интерпретаторе.
Элемент $_SERVER
Элемент $_SERVER содержит путь к корневой директории сервера, если скрипт выполняется в виртуальном хосте, в данном элементе указывается путь к корневой директории виртуального хоста. Т.е. в конфигурационном файле httpd.conf виртуальный хост имеет директиву DocumentRoot, которой присвоено значение...