HSDN Mirroring Cacher, Скрипт зеркалирования сайтов |
Здравствуйте, гость ( Вход | Регистрация )
HSDN Mirroring Cacher, Скрипт зеркалирования сайтов |
31.3.2010, 20:35
Сообщение
#21
|
|
Новичок Группа: Пользователи Сообщений: 5 Регистрация: 17.6.2009 Пользователь №: 354 |
НУ у меня на апаче стоит.С моей ВТшной линией достаточно быстро открывает
-------------------- |
|
|
27.8.2010, 10:30
Сообщение
#22
|
|
Участник Группа: Пользователи Сообщений: 13 Регистрация: 27.12.2008 Из: Саратов Пользователь №: 230 |
cacher.php
CODE [root@n1 ucp-anticheat.vfose.ru]# cat cacher.php <?php include 'mcacher.class.php'; // Подключение класса $mcp = new Cacher; // Определение класса $mcp->cache_dir = 'cache'; // Директория хранения файлов кэша $mcp->cache_time = 24; // Период хранения кэша в часах (0 -- не кэшировать) // Пути, для которых следует применить индивидуальный период хранения кэша $mcp->custom_cache = array ( "^/news" => 0, // Не кэшировать страницу /news ".dhtml$" => 4 // Обновлять кэш для файлов .dhtml раз в 4 часа ); // Ограничение доступа к различным ресурсам, страницам или файлам $mcp->forbidden = array ( "^/forum/index.php", // Закрыть доступ к странице /badpage.php ".mp3$" // Закрыть доступ ко всем файлам .mp3 ); $mcp->connect = 'http://ucp-anticheat.ru'; // Адрес подключения // Автозамена реального имени сайта на имя сайта зеркала в заголовках HTTP $mcp->head_replace = array ( 'ucp-anticheat.ru' => $_SERVER['SERVER_NAME'] // Для заголовков, пр. Location ); // Автозамена реального имени сайта на имя сайта зеркала в теле страницы, // а также в ссылках на страницах $mcp->body_replace = array ( 'http://ucp-anticheat.ru' => '' // Заменяем ссылки вида: // href="http://www.hsdn.org/link" на href="/link" ); $mcp->run_cache(); // Запуск класса ?> [root@n1 ucp-anticheat.vfose.ru]# права/файлы CODE [root@n1 ucp-anticheat.vfose.ru]# ls -ls итого 48 4 drwxrwxrwx 2 nginx nginx 4096 Авг 27 10:55 cache 4 -rwxrwxrwx 1 root root 1772 Авг 27 11:17 cacher.php 40 -rwxrwxrwx 1 root root 39480 Авг 26 16:17 mcacher.class.php [root@n1 ucp-anticheat.vfose.ru]# сервер CODE nginx version: nginx/0.8.42 CODE PHP 5.2.13 (cgi-fcgi) (built: Feb 26 2010 17:40:52) Copyright © 1997-2009 The PHP Group Zend Engine v2.2.0, Copyright © 1998-2010 Zend Technologies with Zend Extension Manager v1.2.2, Copyright © 2003-2007, by Zend Technologies with Zend Optimizer v3.3.3, Copyright © 1998-2007, by Zend Technologies Картинки не подгружаются, - _http://ucp-anticheat.vfose.ru Как убрать рекламу, ( видел что здесь где-то об этом упомянули ) error.log CODE 2010/08/27 12:12:37 [error] 8660#0: *3412 open() "/var/www/ucp-anticheat.vfose.ru/ucp.css" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /ucp.css HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3413 open() "/var/www/ucp-anticheat.vfose.ru/images/logo3.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/logo3.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3410 open() "/var/www/ucp-anticheat.vfose.ru/images/ru.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/ru.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3414 open() "/var/www/ucp-anticheat.vfose.ru/images/en.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/en.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3412 open() "/var/www/ucp-anticheat.vfose.ru/images/kv.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/kv.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3413 open() "/var/www/ucp-anticheat.vfose.ru/images/windows7.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/windows7.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3410 open() "/var/www/ucp-anticheat.vfose.ru/images/vmprotect.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/vmprotect.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3414 open() "/var/www/ucp-anticheat.vfose.ru/images/vista.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/vista.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3412 open() "/var/www/ucp-anticheat.vfose.ru/images/bgg.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/bgg.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3413 open() "/var/www/ucp-anticheat.vfose.ru/images/bgg2.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/bgg2.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3410 open() "/var/www/ucp-anticheat.vfose.ru/images/hlsw.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/hlsw.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3414 open() "/var/www/ucp-anticheat.vfose.ru/images/lac.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/lac.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3412 open() "/var/www/ucp-anticheat.vfose.ru/images/myac.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/myac.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3413 open() "/var/www/ucp-anticheat.vfose.ru/images/sxe.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/sxe.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3410 open() "/var/www/ucp-anticheat.vfose.ru/images/dntl.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/dntl.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3414 open() "/var/www/ucp-anticheat.vfose.ru/images/easy.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/easy.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:12:37 [error] 8660#0: *3412 open() "/var/www/ucp-anticheat.vfose.ru/images/custodia.png" failed (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /images/custodia.png HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" 2010/08/27 12:13:33 [error] 8660#0: *3413 "/var/www/ucp-anticheat.vfose.ru/forum/index.php" is not found (2: No such file or directory), client: 88.147.144.165, server: ucp-anticheat.vfose.ru, request: "GET /forum/ HTTP/1.1", host: "ucp-anticheat.vfose.ru", referrer: "http://ucp-anticheat.vfose.ru/" Из лога видно что css и сами картинки соответственно не подгружаются, их как-бы нет. Что не так ? |
|
|
27.8.2010, 21:00
Сообщение
#23
|
|
HSDN Team Группа: Главные администраторы Сообщений: 55 Регистрация: 18.2.2008 Пользователь №: 75 |
Здравствуйте.
Работа с Nginx не проверялась, класс корректно работает только с Apache, об этом даже упомянуто в комментарии класса Код /*
* СИСТЕМНЫЕ ТРЕБОВАНИЯ * * - PHP 5.2.0 или выше с поддержкой Сокетов * - Apache 1.3.0 или выше с поддержкой mod_rewrite */ -------------------- |
|
|
30.8.2010, 11:07
Сообщение
#24
|
|
Участник Группа: Пользователи Сообщений: 13 Регистрация: 27.12.2008 Из: Саратов Пользователь №: 230 |
Вопрос решён. Можешь писать что на nginx'e все нормально.
|
|
|
1.3.2011, 1:15
Сообщение
#25
|
|
Новичок Группа: Пользователи Сообщений: 6 Регистрация: 16.6.2009 Пользователь №: 353 |
а можно чтонибудь подправить, чтобы через этот скрипт можно было вконтакте залогиниться?
хочу зазеркалить этот контакт... |
|
|
10.12.2012, 14:02
Сообщение
#26
|
|
Новичок Группа: Пользователи Сообщений: 4 Регистрация: 10.12.2012 Пользователь №: 1882 |
а можно чтонибудь подправить, чтобы через этот скрипт можно было вконтакте залогиниться? хочу зазеркалить этот контакт... Здравствуйте! Помогите пожалуйста разобраться в работе скрипта, хочу зеркалить свой сайт в локальной сети города. установил denwer: Denwer3_Base_PHP52_2012-06-27_a2.2.22_p5.2.12_zendoptimizer_m5.5.25_pma3.5.1_xdebug создал директорию со своим ip адресом в ней создал файлы .htaccess и cacher.php а так же скачал и положил туда же файл mcacher.class.phps При открытии сайта возникает ошибка: CODE Warning: include(mcacher.class.php) [function.include]: failed to open stream: No such file or directory in Z:\home\my_ip\www\cacher.php on line 2 Warning: include() [function.include]: Failed opening 'mcacher.class.php' for inclusion (include_path='.;/usr/local/php5/PEAR') in Z:\home\my_ip\www\cacher.php on line 2 Fatal error: Class 'Cacher' not found in Z:\home\my_ip\www\cacher.php on line 4 может быть мне нужно установить более старую версию денвера? или я что-то не так делаю? кстати в конце файла mcacher.class.phps нет ?> так и должно быть? Заранее благодарю! |
|
|
18.12.2012, 17:36
Сообщение
#27
|
|
Новичок Группа: Пользователи Сообщений: 4 Регистрация: 10.12.2012 Пользователь №: 1882 |
Извиняюсь, скрипт работает! просто плохо ознакомился с инструкцией по установке!
Сейчас возникла проблема с авторизацией на зеркалируемом сайте, при вводе имени пользователя и пароля страница перегружается и вновь просит авторизироваться. Пробовал отключать кэш - не помогает. В настройках движка (NGCMS) зеркалируемого сайта менял метод авторизации с cookie на сессии и обратно - но результат тот же! Очень бы хотелось разобраться в чём причина. Помогите пожалуйста! |
|
|
20.12.2012, 21:39
Сообщение
#28
|
|
Администратор Группа: Главные администраторы Сообщений: 277 Регистрация: 18.12.2007 Из: Саратов Пользователь №: 1 |
Извиняюсь, скрипт работает! просто плохо ознакомился с инструкцией по установке! Сейчас возникла проблема с авторизацией на зеркалируемом сайте, при вводе имени пользователя и пароля страница перегружается и вновь просит авторизироваться. Пробовал отключать кэш - не помогает. В настройках движка (NGCMS) зеркалируемого сайта менял метод авторизации с cookie на сессии и обратно - но результат тот же! Очень бы хотелось разобраться в чём причина. Помогите пожалуйста! Если не работает при отключенном кешировании - скорее всего метод авторизации по каким-то причинам не поддерживается скриптом. Нужно изучать случай в частном порядке. Нужно больше информации. -------------------- |
|
|
21.12.2012, 10:59
Сообщение
#29
|
|
Новичок Группа: Пользователи Сообщений: 4 Регистрация: 10.12.2012 Пользователь №: 1882 |
Если не работает при отключенном кешировании - скорее всего метод авторизации по каким-то причинам не поддерживается скриптом. Нужно изучать случай в частном порядке. Нужно больше информации. К сожалению я в PHP не силён, могу только сказать что авторизация реализована при помощи плагина auth_basic для NGCMS: ngcms.ru/uploads/files/components/auth_basic_0_20.zip |
|
|
23.12.2012, 9:32
Сообщение
#30
|
|
Новичок Группа: Пользователи Сообщений: 4 Регистрация: 10.12.2012 Пользователь №: 1882 |
Может быть кто-нибудь возьмётся за адаптацию HSDN Mirroring Cacher к NGCMS за $ ?
|
|
|
31.7.2013, 15:40
Сообщение
#31
|
|
Новичок Группа: Пользователи Сообщений: 4 Регистрация: 31.7.2013 Пользователь №: 2065 |
У меня есть подозрения что почему-то этот класс не обрабатывает директиву Location или я настроил что-то не так.
Проблема следующая. Есть сайт bookerok. com Все показывается, но если выполнить какой-нибудь который выполняется методом POST то сайт перестает зеркалироваться. Баг ? Вот код который использую CODE require_once "cacher.class.php"; $mcp = new Cacher; $mcp->cache_dir = 'cache'; $mcp->cache_time = 24; $mcp->connect = 'http://bookerok.com/'; $mcp->head_replace = array ( 'bookerok.com' => $_SERVER['SERVER_NAME'] ); $mcp->body_replace = array ( 'http://bookerok.com' => '', ); $mcp->run_cache(); Буду признателен за помощь. |
|
|
31.7.2013, 16:52
Сообщение
#32
|
|
Администратор Группа: Главные администраторы Сообщений: 277 Регистрация: 18.12.2007 Из: Саратов Пользователь №: 1 |
У меня есть подозрения что почему-то этот класс не обрабатывает директиву Location или я настроил что-то не так. Проблема следующая. Есть сайт bookerok. com Все показывается, но если выполнить какой-нибудь который выполняется методом POST то сайт перестает зеркалироваться. Баг ? Вот код который использую CODE require_once "cacher.class.php"; $mcp = new Cacher; $mcp->cache_dir = 'cache'; $mcp->cache_time = 24; $mcp->connect = 'http://bookerok.com/'; $mcp->head_replace = array ( 'bookerok.com' => $_SERVER['SERVER_NAME'] ); $mcp->body_replace = array ( 'http://bookerok.com' => '', ); $mcp->run_cache(); Буду признателен за помощь. Для обработки POST-запросов необходимо отключить кеширование, т.е. установить $mcp->cache_time = 0;. Что касается Location: имеются в виду редиректы заголовку? Редирект по заголовку должен вополнять браузер, а не скрипт. Скрипт лишь отдаст браузеру страницу, на которую браузер попал по заголовку Location. Естественно, если в заголовках Location значится полный адрес сайта, его необходимо заменить через $mcp->head_replace, иначе браузер будет переадресован на оригинальную версию сайта, а не на зеркало. -------------------- |
|
|
31.7.2013, 16:58
Сообщение
#33
|
|
Новичок Группа: Пользователи Сообщений: 4 Регистрация: 31.7.2013 Пользователь №: 2065 |
Для обработки POST-запросов необходимо отключить кеширование, т.е. установить $mcp->cache_time = 0;. Что касается Location: имеются в виду редиректы заголовку? Редирект по заголовку должен вополнять браузер, а не скрипт. Скрипт лишь отдаст браузеру страницу, на которую браузер попал по заголовку Location. Естественно, если в заголовках Location значится полный адрес сайта, его необходимо заменить через $mcp->head_replace, иначе браузер будет переадресован на оригинальную версию сайта, а не на зеркало. После поста приходит такой вот ответ. CODE Cache-Control:no-cache, must-revalidate, post-check=0, pre-check=0 Connection:keep-alive Content-Encoding:gzip Content-Language:ru Content-Length:1519 Content-Type:text/html; charset=utf-8 Date:Wed, 31 Jul 2013 13:57:01 GMT ETag:"1375279020" Expires:Sun, 19 Nov 1978 05:00:00 GMT Keep-Alive:timeout=20 Last-Modified:Wed, 31 Jul 2013 13:57:00 +0000 Location:http://bookerok.com/ru/search-booked Server:nginx Vary:Accept-Encoding Контента никакого нет. Кто должен сходить по ссылке которая обозначена в Location ? Можно посмотреть тут как работает [http://]book-hot[точка]com Как видно браузер никуда не переходит |
|
|
31.7.2013, 17:08
Сообщение
#34
|
|
Администратор Группа: Главные администраторы Сообщений: 277 Регистрация: 18.12.2007 Из: Саратов Пользователь №: 1 |
Ну в этом случае браузер должен перейти на http://bookerok.com/ru/search-booked (автоматически) и передать туда переменную сессии (или куки), и сайт выдаст результат POST-запроса. Но т.к. запрос Вы подаете на зеркале, а редирект происходит на реальный сайт, то ни кукисы, ни сессии работать не будут.
В вашем случае нужно сделать то, о чем я выше писал: отключить кеширование (чтобы не кешировались кукисы, запросы и сессии) и включить автозамену заголовков, чтобы заменить "bookerok.com" в Location на вдрес Вашего сайта через head_replace. Отмечу, что head_replace требует поддержку регулярных выражений на php, поэтому если они не поддерживаются, работать замена не будет. -------------------- |
|
|
31.7.2013, 17:13
Сообщение
#35
|
|
Администратор Группа: Главные администраторы Сообщений: 277 Регистрация: 18.12.2007 Из: Саратов Пользователь №: 1 |
UPD: и не забудьте после отключения кеширования очистить папку с кешем.
-------------------- |
|
|
31.7.2013, 17:15
Сообщение
#36
|
|
Новичок Группа: Пользователи Сообщений: 4 Регистрация: 31.7.2013 Пользователь №: 2065 |
Мой код сейчас выглядит так.
Можете сказать в чем проблема ? CODE require_once "cacher.class.php"; $mcp = new Cacher; $mcp->cache_dir = 'cache'; $mcp->cache_time = 0; $mcp->connect = 'http://bookerok.com/'; $mcp->head_replace = array ( 'http://bookerok.com/ru/search-booked' => $_SERVER['SERVER_NAME'].'/ru/search-booked' ); $mcp->body_replace = array ( 'http://bookerok.com' => '', ); $mcp->run_cache(); |
|
|
31.7.2013, 17:22
Сообщение
#37
|
|
Администратор Группа: Главные администраторы Сообщений: 277 Регистрация: 18.12.2007 Из: Саратов Пользователь №: 1 |
У Вас ошибка. Необходимо указать так:
Код $mcp->head_replace = array ( 'http://bookerok.com' => '', 'http://bookerok.com/ru/search-booked' => 'http://'.$_SERVER['SERVER_NAME'].'/ru/search-booked' ); Да и по идее первой строчки должно хватить. -------------------- |
|
|
31.7.2013, 17:27
Сообщение
#38
|
|
Администратор Группа: Главные администраторы Сообщений: 277 Регистрация: 18.12.2007 Из: Саратов Пользователь №: 1 |
Посмотрел Ваш сайт. Проблема судя по всему не в заголовках, а в ява-скрипте. Скорее всего по каким-то причинам он не хочет работать не не оригинальном сайте. Возможно внутри скриптов необходимо что-то тоже заменять. Но это уже скорее вопрос к программистам, а не в скрипту, т.к. скрипт лишь дает браузеру ровно то, что принял с оригинального сайта.
-------------------- |
|
|
31.7.2013, 17:30
Сообщение
#39
|
|
Администратор Группа: Главные администраторы Сообщений: 277 Регистрация: 18.12.2007 Из: Саратов Пользователь №: 1 |
Например, если на главной странице сайте не заполнять поля, и сразу нажать "найти", на оригинале не происходит отправки запроса, а просто выходит сообщение на яве. На зеркале же почему-то отправляется пост-запрос, и видимо тоже как-то криво, т.к. судя по всему запрос стоится ajax-ом, а не простым постом.
-------------------- |
|
|
31.7.2013, 17:32
Сообщение
#40
|
|
Новичок Группа: Пользователи Сообщений: 4 Регистрация: 31.7.2013 Пользователь №: 2065 |
Посмотрел Ваш сайт. Проблема судя по всему не в заголовках, а в ява-скрипте. Скорее всего по каким-то причинам он не хочет работать не не оригинальном сайте. Возможно внутри скриптов необходимо что-то тоже заменять. Но это уже скорее вопрос к программистам, а не в скрипту, т.к. скрипт лишь дает браузеру ровно то, что принял с оригинального сайта. Я посмотрел заголовки которые я получаю на book-hot и у меня нет директивы location значит что-то по дороге теряется по всей видимости |
|
|
Текстовая версия | Сейчас: 7.11.2024, 22:00 |