Все публикации

Перенос домена (Рейтинг: +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, которой присвоено значение...

Топ статей / Облако тегов / Поиск / Авторы