Seditio Source
Root |
./othercms/slaed_cms_6.2_pro/admin/info/editor-russian.html
[hr][color=red][b][i]Внимание![/b]<br>
Данный раздел предназначен только для администраторов, которые хорошо знакомы с серверным ПО и языком PHP.[/i][/color][hr]<br>
[justify]Раздел «Редактор» позволяет непосредственно через панель администрирования управлять основными системными файлами. Управление файлами производится во вкладках:<br>
[li] [b][i]Ядро системы[/i][/b] – файл внедрения в ядро системы: config_function.php. Во вкладке можно добавить код, который будет размещён в ядре системы.<br>
[li] [b][i]Шапка системы[/i][/b] – файл внедрения в шапку системы: config_header.php. Во вкладке можно вставить код, который будет внедрён в head системы. Как правило, данный файл используют для внедрения java-скриптов и мета тегов.<br>
[li] [b][i]Системный ЧПУ[/i][/b] – файл конфигураций правил преобразований ЧПУ на системном уровне: config_rewrite.php. Во вкладке можно изменить или дополнить стандартные правила преобразований адресных строк браузера. Данная возможность поддерживается только в случае установленного на сервере Mod Rewrite.<br>
[li] [b][i]Серверный ЧПУ[/i][/b] – файл конфигураций правил преобразований ЧПУ на серверном уровне: .htaccess. Во вкладке можно изменить или дополнить стандартные правила преобразований адресных строк браузера на серверном уровне. Данная возможность поддерживается только в случае установленного на сервере Mod Rewrite.<br>
[li] [b][i]Правила для роботов[/i][/b] – файл конфигураций инструкций и параметров индексирования для поисковых роботов: robots.txt. Во вкладке можно изменить или дополнить текстовый файл, находящийся в корневой директории сайта, в котором записываются специальные инструкции для поисковых роботов. Эти инструкции могут запрещать к индексации некоторые разделы или страницы на сайте, указывать на правильное «зеркалирование» домена, рекомендовать поисковому роботу соблюдать определенный временной интервал между скачиванием документов с сервера и т.д. В этом файле Вы можете указать параметры индексирования сайта как для всех роботов сразу, так и для каждой поисковой системы по отдельности.<br>
<br>
Для внесения изменений в файл перейдите в соответствующую вкладку и внесите изменения в открывшийся редактор содержимого файла, для сохранения нажмите «Сохранить».[/justify]<br>
<br>
[hr][color=red][b][i]Внимание![/b]<br>
Если на конфигурационные файлы не будут установленные соответствующие права доступа (CHMOD - 666), то система выдаст соответствующее предупреждение.[/i][/color][hr]<br>
[b][color=green]Примеры использования редактора внедрений в отделе «Шапка системы»[/color][/b]<br>
<br>
[color=orangered][b][i]Перенаправление посетителя, пришедшего с определённого сайта[/i][/b][/color]<br>
Перейдите во вкладку «Шапка системы» и добавьте следующую запись:<br>
[php]&#036;reflink = &quot;#slaed.net#i&quot;;<br>
&#036;metlink = &quot;news.html&quot;;<br>
&#036;referer = text_filter(getenv(&quot;HTTP_REFERER&quot;));<br>
if (preg_match(&#036;reflink, &#036;referer)) { <br>
echo &#039;&lt;meta http-equiv=&quot;refresh&quot; content=&quot;0; url=&#039;.&#036;metlink.&#039;&quot;&gt;&#039;; <br>
}[/php]<br>
[justify]&#036;reflink – отвечает за адрес сайта, с которого пришёл посетитель.<br>
Вместо: slaed.net укажите свой домен.<br>
&#036;metlink – отвечает за страницу, куда будет перенаправлен посетитель<br>
Вместо: news.html укажите необходимую страницу или сайт.<br>
<br>
[color=orangered][b][i]Запрещаем копировать информацию с сайта[/i][/b][/color]<br>
Всё что можно прочитать и увидеть, соответственно можно скопировать. Эффективной защиты от копирования не существует. Но это не значит, что ей нельзя препятствовать, можно отключить использование правой или других кнопок мыши, которые применяются для копирования, это станет незначительным, но всё-таки препятствием в копировании для начинающих пользователей.<br>
Перейдите во вкладку «Шапка системы» и добавьте следующую запись:[/justify]<br>
[php]echo &#039;&lt;script&gt;<br>
&lt;!--//<br>
function click() {<br>
// Чтобы отключить левую кнопку поставьте цифру 1 <br>
// Чтобы отключить третью кнопку поставьте цифру 3 <br>
if (event.button == 2) { <br>
// Здесь введите свою надпись, которая появится в окне предупреждения <br>
alert(&quot;Copyright Scriptic!&quot;); <br>
}<br>
}<br>
document.onmousedown=click;<br>
//--&gt;<br>
&lt;/script&gt;&#039;;[/php]<br>
[justify]Заметим, что работает этот код только на браузерах Internet Explorer. Не исключено что и для других браузеров есть нечто подобное. Если захотите воспользоваться другим кодом, просто замените этот на свой код, вставив его между echo &#039; и &#039;;[/justify]<br>
<br>
[color=orangered][b][i]Перенаправление посетителя из определённой страны[/i][/b][/color]<br>
Перейдите во вкладку «Шапка системы» и добавьте следующую запись:<br>
[php]&#036;userlang = &quot;Russia&quot;; <br>
&#036;metlink = &quot;news.html&quot;; <br>
&#036;userip = user_geo_ip(getip(), 2); <br>
if (&#036;userip == &#036;userlang) { <br>
echo &#039;&lt;meta http-equiv=&quot;refresh&quot; content=&quot;0; url=&#039;.&#036;metlink.&#039;&quot;&gt;&#039;; <br>
}[/php]<br>
[justify]&#036;userlang – отвечает за название страны, с которой пришел посетитель.<br>
Название страны не должно быть произвольным и должно соответствовать стандартам использования класса. Правильность написания той или иной страны можно проверить в переменной &#036;COUNTRY_NAMES файла: function/geo_ip.php<br>
&#036;metlink – отвечает за страницу, куда будет перенаправлен посетитель<br>
Вместо: news.html укажите необходимую страницу или сайт.<br>
<br>
[b][color=green]Примеры использования редактора внедрений в отделе «Серверный ЧПУ»[/color][/b]<br>
<br>
[color=orangered][b][i]Установка запрета на использование другими сайтами любых изображений с сайта[/i][/b][/color]<br>
Ни для кого не секрет, что некоторые сайты для экономии своего трафика и размера используемого места на сервере применяют удалённые изображения с других сайтов, тем самым поглощают чужой трафик и повышают нагрузку на сервер. Чтобы этому воспрепятствовать, предлагаем к использованию следующие методы.<br>
Перейдите во вкладку «Серверный ЧПУ» и добавьте после:[/justify]<br>
[php]# Mod rewrite on<br>
RewriteEngine On<br>
RewriteBase /[/php]<br>
следующую запись:<br>
[php]RewriteOptions MaxRedirects=100<br>
RewriteCond %{HTTP_REFERER} !^http://(www&#092;.)?slaed&#092;.net/ [NC]<br>
RewriteRule &#092;.(jpe?g|gif|bmp|png)&#036; http://www.slaed.net/templates/default/images/logos/slaed_logo_60x60.png [L][/php]<br>
[justify]Вместо: slaed укажите имя домена своего сайта.<br>
Вместо: net укажите зону домена своего сайта.<br>
Вместо: http://www.slaed.net/templates/default/images/logos/slaed_logo_60x60.png укажите ссылку на логотип или изображение, которое будет отображаться на том сайте, который использует изображения с сайта.<br>
<br>
[color=orangered][b][i]Объединение домена с www и без[/i][/b][/color]<br>
На первый взгляд домен с приставкой www и без неё является одинаковым, на самом деле это не так. Сервером они инициируются как два разных домена и, как правило, на них можно установить два совершенно разных сайта. У некоторых хостеров слияние двух доменов предусмотрено изначально и производится автоматически, у некоторых данная настройка существует в панели управления хостингом, для хостингов у которых слияние не предусмотрено можно воспользоваться следующим методом.<br>
Перейдите во вкладку «Серверный ЧПУ» и добавьте после:[/justify]<br>
[php]# Mod rewrite on<br>
RewriteEngine On<br>
RewriteBase /[/php]<br>
следующую запись:<br>
[php]# Redirect<br>
RewriteCond %{HTTP_HOST} !^www&#092;.slaed&#092;.net [NC]<br>
RewriteRule ^(.*)&#036; http://www.slaed.net/&#036;1 [R=301,L][/php]<br>
[justify]Вместо: slaed укажите имя домена своего сайта.<br>
Вместо: net укажите зону домена своего сайта.<br>
Для работы данного метода, сервер хостера должен поддерживать работу с .htaccess, Mod Rewrite должен быть установлен и активирован.[/justify]<br>
<br>
[color=orangered][b][i]Возможные правила и настройки[/i][/b][/color]<br>
[justify]В описании ниже, вашему вниманию предлагаются возможные правила с описанием, которые допустимы к использованию в нашем случае на «Серверном ЧПУ», а именно в основном файле .htaccess, который находится в главной директории системы.[/justify]<br>
<br>
[php]# Запрет листинга и просмотра директорий<br>
Options All -ExecCGI -Indexes -Includes +FollowSymLinks[/php]<br>
<br>
[php]# Индексная страница сайта<br>
DirectoryIndex index.php[/php]<br>
<br>
[php]# Кодировка сайта по умолчанию<br>
AddDefaultCharset utf-8[/php]<br>
<br>
[php]# Редирект, в случае соответствующей ошибки на сервере<br>
ErrorDocument 400    /index.php?error=400<br>
ErrorDocument 401    /index.php?error=401<br>
ErrorDocument 403    /index.php?error=403<br>
ErrorDocument 404    /index.php?error=404<br>
ErrorDocument 500    /index.php?error=500<br>
ErrorDocument 503    /index.php?error=503[/php]<br>
<br>
[php]# Настройки безопасности, актуальны для версий ниже PHP 5.3.0, для PHP 5.4.0 и выше неактуальны<br>
php_flag register_globals off<br>
php_flag safe_mode on<br>
php_flag magic_quotes_gpc on[/php]<br>
<br>
[php]# Запрет показа версий серверного ПО<br>
ServerSignature Off[/php]<br>
<br>
Приведённое выше правило, поддерживается увы не всеми хостерами. Описанные ниже настройки доступны только в случае установленного на сервере mod_rewrite.<br>
<br>
[php]# Включение mod_rewrite<br>
RewriteEngine On[/php]<br>
<br>
[justify]Модуль mod_rewrite является программным модулем веб сервера Apache (обратите внимание, что он не будет выполняться под другими веб серверами!). Его первичная функция - манипуляция действий с URL. Модуль очень универсален и разносторонен, здесь показаны некоторые реальные примеры.[/justify]<br>
<br>
[php]# Корневая директория<br>
RewriteBase /[/php]<br>
<br>
[php]# Редирект с www на без www<br>
RewriteCond %{HTTP_HOST}    ^www&#092;.(.*) [NC]<br>
RewriteRule ^(.*)&#036;    http://%1/&#036;1 [R=301,L][/php]<br>
<br>
[php]# Редирект с без www на www<br>
RewriteCond %{HTTP_HOST}    ^[^.]+&#092;.[^.]+&#036;<br>
RewriteCond %{HTTPS}s    ^on(s)|<br>
RewriteRule ^    http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L][/php]<br>
<br>
[php]# Редирект с протокола http на https<br>
RewriteCond %{HTTPS} off<br>
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L][/php]<br>
<br>
[php]# Редирект адресов с index.php на без index.php<br>
RewriteCond %{THE_REQUEST}    ^GET.*index&#092;.php [NC]<br>
RewriteRule (.*?)index&#092;.php/*(.*)    /&#036;1&#036;2 [R=301,L][/php]<br>
<br>
[php]# Редирект на новую категорию<br>
RewriteRule ^старая/(.*)&#036;    /новая/&#036;1 [R=301,L][/php]<br>
<br>
[php]# Правила обработки запросов для блокировки распространенных эксплоитов<br>
RewriteCond %{QUERY_STRING}    proc/self/environ [OR]<br>
RewriteCond %{QUERY_STRING}    mosConfig_[a-zA-Z_]{1,21}(=|&#092;%3D) [OR]<br>
RewriteCond %{QUERY_STRING}    base64_(en|de)code&#092;(.*&#092;) [OR]<br>
RewriteCond %{QUERY_STRING}    base64_encode[^(]*&#092;([^)]*&#092;) [OR]<br>
RewriteCond %{QUERY_STRING}    (&lt;|%3C)([^s]*s)+cript.*(&gt;|%3E) [NC,OR]<br>
RewriteCond %{QUERY_STRING}    GLOBALS(=|&#092;[|&#092;%[0-9A-Z]{0,2}) [OR]<br>
RewriteCond %{QUERY_STRING}    _REQUEST(=|&#092;[|&#092;%[0-9A-Z]{0,2})<br>
RewriteRule .*    index.php [F][/php]<br>
<br>
[php]# Блокирование MySQL инъекций<br>
RewriteCond %{QUERY_STRING}    CONCAT.*&#092;( [NC,OR]<br>
RewriteCond %{QUERY_STRING}    UNION.*SELECT.*&#092;( [NC,OR]<br>
RewriteCond %{QUERY_STRING}    UNION.*ALL.*SELECT [NC]<br>
RewriteRule ^(.*)&#036;    index.php [F,L][/php]<br>
<br>
[php]# Блокировка файловых инъекций <br>
RewriteCond %{REQUEST_METHOD}    GET<br>
RewriteCond %{QUERY_STRING}    [a-zA-Z0-9_]=http:// [OR]<br>
RewriteCond %{QUERY_STRING}    [a-zA-Z0-9_]=(&#092;.&#092;.//?)+ [OR]<br>
RewriteCond %{QUERY_STRING}    [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [NC]<br>
RewriteRule .*    - [F][/php]<br>
<br>
[php]# Редирект для чужих доменов<br>
RewriteCond %{HTTP_HOST}    !^slaed&#092;.net&#036;<br>
RewriteRule ^(.*)&#036;    http://slaed.net/&#036;1 [R=301,L][/php]