jkm

Рейтинг
120
Регистрация
20.02.2014
warring:

RewriteRule ^/$ index.html [L]

Это не работает, т.к. там строка без начального слеша.

RewriteRule ^$ index.html [L]

---------- Добавлено 03.12.2014 в 03:50 ----------

Или такой вариант


RewriteCond %{HTTP_HOST} ^s1.ru
RewriteRule ^index.php$ index.html [L]

Поменять шаблон в RewriteRule


RewriteRule ^mandarin http://google.com/ [R,L]

Вероятно ТС совсем заработался и упорно пытается найти ip клиента в $_SERVER['SERVER_ADDR'].

Искать следует в $_SERVER['REMOTE_ADDR'] и $_SERVER['HTTP_X_FORWARDED_FOR']

Функция readdir возвращает лишь имя файла, а не полный путь к файлу.

И неплохо проверять, что открываешь файл, а то каждый каталог содержит, как минимум, ссылку на себя '.' и родительским каталог '..'

http://php.net/manual/en/ziparchive.extractto.php



$srcdir = './gamezip/';
$zip = new ZipArchive;
if ($head=opendir($srcdir)){
while (false != ($file = readdir($head))) {
$file = $srcdir.$file;

if (!is_file($file)) continue;

$res = $zip->open($file);
if ($res === TRUE) {
$zip->extractTo('./game/');
$zip->close();
echo 'woot!';
} else {
echo 'doh!';
}
}
}

Если стоит задача найти дубли контента на страницах сайта, которые уже выпали или еще не попали в индекс.

Решением будет сделать своего робота, который обойдет все страницы на сайте и проведет поиск дублей, используя, например, алгоритм шинглов.

http://php.net/manual/en/function.str-getcsv.php


$text = '~01001~^~0100~^~Butter, salted~^~BUTTER,WITH SALT~^~~^~~^~Y~^~~^0^~~^6.38^4.27^8.79^3.87';
var_dump(str_getcsv($text, '^', '~'));


RewriteCond %{DOCUMENT_ROOT}/folder%{REQUEST_URI} -f
RewriteRule ^ /folder%{REQUEST_URI} [L]

Выполняет поиск файла в folder и отдает его если он существует.

Создать новое http://php.net/manual/ru/function.mkdir.php или переименовать старое http://php.net/manual/ru/function.rename.php ?

Для отрезания строки http://php.net/manual/ru/function.substr.php

Сей баг можно объявить фичей :)

Там изначально в шаблоне кусок $\s+ захватывал любое количество подряд идущих пробелов и переносов строк.

В результате текст обрабатывался как если бы пустых строк не было вовсе.

Решается разделением блоков строками с любым символом.

Например:

консалт строй плюс
консалт строй
;
консалт медиа групп
консалт медиа
;
консалт

Вообще, такое поведение легко исправить, заменив $\s+ на \r?\n. Тогда поиск будет останавливаться на пустых строках, как положено.


<html><body>
<textarea id="t1" rows="20" cols="60">Исходный набор
</textarea>
<br>
<button id="btn1" onClick="proc()">Go</button>
<br><br>
<textarea id="t2" rows="20" cols="60">Результат
</textarea>
<script>

function proc(){

str = document.getElementById('t1').value;
pos = 0;
res = [];
do {
i = 0;
str = str.substr(pos).replace(/^((.+) (?:.+)$(?:\r?\n\2 (?:.+)$)*)\r?\n\2(?= *$)/m,
function(m0, m1, m2, offset, s){
i = 1;
pos = offset + m1.length;
res.push(s.substr(0, pos));
regexp = new RegExp("^" + m2.replace(/([.?*+^$[\]\\(){}|-])/g, '\\$1'), 'mg');
return m0 + m0.replace(regexp, '').trim().replace(/(^|\s+)-?/g, ' -');
});
} while (i);
document.getElementById('t2').value = res.join('') + str;
}
</script>
</body>
</html>
Всего: 749