Привязку к домену убрали
На этот вопрос уже был дан ответ.
Он пропускает готовый контент сайта через себя и выполняет подмену. Настройка делается или в .httaccess (если это Apache) или в конфиге Вашего сервера (nginx, lightppd, etc). Для вызова скрипт использует любой из 3-ых спосбов curl, socket, или file_open. Я обычно использую curl.
Скрипту всеравно сколько постов на Вашем сайте. Для него важна только единственная цифра - это сколько замен находится в БД. БД может быть любая, на данный момент это SQLite. Для связи с БД, скрипт использует движок PDO.
Если еще есть вопросы, задавайте. Постараюсь ответить на все.
Да и писал я, что скрипт работает по принципу ПРОКСИ. А не то что стоит прокси сервер. Он пропускает сайт готовый контент через себя и выполняет подмену. Сайт же он вызывает 3 спосбами curl, socket, или file_open. Я обычно использую curl.
я тот кто писал данный скрипт
сейчас используется регексп но можно подключить и морфологию. Правда это увеличит время работы скрипта.
Про вывод контента писал уже ни раз. описал практически весь принцип действия. Может Вам просто проще показать. Стучитесь тогда в icq.
Прокси - это когда на сайте стоит скрипт который вызывает тот же сайт. Кеширование может иметь несколько уровней.
Кеш всей страницы (те то что отрендерено), кеш сниппетов итд
Абсолютно на любой сайт и абсолютно любой движок. Скрипту безразницы с каким движком иметь дело. Хоть голый html.
Скрипту всеравно сколько постов в вашей CMS. Ему вообще всеравно как много контента на вашем сайте. Скрипт единовременно работает только с одной отрендеренной страницей.
Все зависит только от Вашей фантазии
Все зависит только от Вашей фантазии. Скрипт работает с регулярными выражениями.
Те host-serv, hostme итд заменяется одной простой регуляркой host.*?
скрипт работает с любыми кодировками. В тело скрипта встроено определение кодировки контента.
<pre>
<?php
/**
* Настроечные переменные
*/
@define('RELATIVE_PATH', '/seo_linker');
@define('ALLOW_CONTENT_TYPE', 'text/html');
@define('FORBIDEN_TAGS', 'img, a, title, h1, h2, h3, h4, h5, h6, thead, ol, ul' .
'xmp, textarea, select, button, script, style, label, noscript, noindex, form');
// Страницы на которых разрешена работа скрипта (допускаются регулярные выражения)
@define('ALLOW_URI', '*');
// Страницы на которых запрещена работа скрипта (допускаются регулярные выражения)
@define('FORBIDEN_URI',
'/admin,
/edit,
/links,
update\.php,
install\.php,
^admin.*,
/rm_import/index\.php'
);
@define('SINGLE_TAGS',
'img'
// УВЕЛИЧИВАЕТ ВРЕМЯ РАБОТЫ СКРИПТА!!!
// Максимальное количесво замен
// Возможные значения: от 1 - до MAX (но рекумендуется делать большим)
@define('MAX_AMOUNT_REPLACES', 500);
// Длина с которой скрипт считает что это спиппет
// Возможные значения: от 100 - 1000
@define('ALLOW_STRING_LENGTH', 150);
TODO:
Сделать возможность ограничения по кол-ву символов в сниппете
REPLACE_LIMIT_IN_SNIPPET_[100] - ([100] - кол-во символов в сниппете)
Пример:
@define('REPLACE_LIMIT_IN_SNIPPET_100', 1);
@define('REPLACE_LIMIT_IN_SNIPPET_500', 2);
@define('REPLACE_LIMIT_IN_SNIPPET_10000', 10);
// Разрешенное кол-во замен в сниппете
// Возможные значения: от 1 - 10
@define('REPLACE_LIMIT_IN_SNIPPET', 1);
// Разрешенное кол-во замен одного и того же слова в сниппете
// Возможные значения: 1
@define('REPLACE_LIMIT_WORD', 1);
// Разрешенное кол-во замен на странице
// Возможные значения: от 1 - 20
@define('REPLACE_LIMIT_WORDS', 15);
// Максимальное кол-во сниппетов для обработки
// Возможные значения: 1 - MAX
@define('REPLACE_MAX_SNIPPETS', 5);
// Разрешается ли повтояющиеся замены
// Возможные значения: FALSE, TRUE
@define('REPLACE_DUPLICATE', FALSE);
/*
* Системные настройки
* Начиная с этой строчки, не трогайте если не знаете что делать.
@define('SEOLINKER_VERSION', '2.5.5');
@define('SCRIPT_FOLDER', dirname(__FILE__));
// Движок для получения контента
// Возможные значения: curl
@define('SCRIPT_ENGINE', "curl");
// Включаем/Выключаем вывод ошибок
@error_reporting(1);
@ini_set("pcre.backtrack_limit", 1000000);
// Отключаем логирование ошибок
@ini_set('error_log', NULL);
@ini_set('log_errors', 0);
// Устанавливаем ограничение на выполнения скрипта
@ini_set('max_execution_time', 60);
@set_time_limit(0);
@set_magic_quotes_runtime(0);
include_once('core.inc');
I();
</pre>
Дело не в теории а в реализации. Скрипт работает с готовым контентом и ему всеравно что ему нужно обрабатывать, хоть голый html, хоть скрипт на perl или php.
да встает да встает
не используется ob_start или какие либо другие функции ob
Используется метод прокси (curl, socket, fileopen) - на выбор
Позволяет заменять любое выражение/контент на то что напишите (используется регулярное выражение для замен в блоках)
Регулярка обрабатывает только сниппет. (снижает затраты на ресурсы)
Контент делится на сниппеты
Скрипт может служить мощным кеширующим звеном. (хоть в memcache хоть в файлы)
Скрипту не важен движок (единственное условие это PHP и (curl, socket, fileopen) - на выбор)
У нас есть подобный под 7.5 но можно и под любую другую сделать
контактная инфа тут http://www.mdinc.ru/contact
скайп mdinc_home
:) улыбнуло
mdinc добавил 01.08.2009 в 17:45
просто флудить бестолку проблема не в площадках а в том как с ними взаимодействуют
На заре когда система развивалась она предоставляла автоматическое размещение и давали они скрипт
Позже они его тупо анулдировали так как не имеют хороших программеров
И предлогают размещать руками
Ладно если статей 5 а если их юолее 100 да еще и с личными
имхо:
Вобщем как всегда люди решили свои ошибки свалить на плечи свои же пользователей
Обидно что так и система катится в сторону худшего и не развивается вовсе