Начальные настройки, файл settings.php

Lasto's Abductor, Похититель буковок Lasto's Abductor, Похититель буковок

Начальные настройки:

Наиболее важные настройки, не изменяемые через админку, вынесены в отдельный файл:

Корневая папка скрипта        755
data 755
settings.php 644 ascii

Изначально внутри него будет вот что:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php /* Выше этой строки в файле ничего не должно быть */
 
# Все переменные вида $_s['xxx'], которые тут изначально есть,
# никуда не должны деться.  

# Позволяем ошибкам РНР отображаться, чтобы не гадать, что не так:
   error_reporting(E_ALL);
 
# Временная зона сайта, регион:
   date_default_timezone_set('Etc/GMT-7');
 
# Правильная локаль, чтобы строковые функции смогли работать:
   setlocale(LC_ALL,'ru_RU.CP1251');
 
# Абсолютный путь до директории сайта (URL).
# Сразу определяйтесь, будет www. в домене или нет.
# Домен или директория непременно заканчиваются слэшем.
   $_s['location']='http://site.net/';    # <== Нужен реальный урл!

# Пока не измените четыре этих значения, скрипт работать не будет !!!
   $_s['login'] ='login';          # логин для входа в админку.
   $_s['passw'] ='passw';          # пароль для входа в админку.
   $_s['secret']='default';        # замените default другим английским.
   $_s['email'] ='owner@mail.ru';  # ваш email.

# Рабочее расширение файлов движка.
# Расширение возможно любое (.php .phtm .phtml .htm .html .shtml)
# Не забудьте его прописать также в корневой .htaccess файл по аналогии!
   $_s['.ext']='.html';
 
# Авторство скрипта и контакты (не стирайте и не изменяйте это):
   $_s['copyright']='
 
   Script: Lasto`s Abductor
   Autor:  Vadim Lasto
   Email:  Vadim_Lasto@mail.ru
   Site:   http://lasto.com/
 
';
 
/* Ниже этой строки в файле ничего не должно быть. */ ?>

Все настройки самоочевидны, но не мешает знать это:

  1. Временная зона сайта может задаваться как для часового пояса (наш вариант), так и для региона, либо даже отдельного города.

    На первый взгляд, оба варианта равноценны.
    Но это не так.

    Использованный здесь вариант написания оператора не занимается переводом сайта на летнее и зимнее время, и это более соответствует принятым сейчас в России порядкам. Что, естественно, может в любой момент измениться.

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

    Делать серверное время не совпадающим с местным временем админа не нужно. Нет никакого смысла в привязке времени сайта к, например, московскому, если админ живёт не в Москве.

  2. Локаль может быть легко детектирована проверочным скриптом.
    Именно эту локаль нужно вписать в настройки.

    Теоретически возможно отсутствие на хосте русской локали.
    Без неё скрипт работать не будет.
    Саппорту хоста придётся оторваться от игр, и поставить локаль.
    Это не сложно.

    При этом знайте, что локаль, именуемая как russian, таковой на самом деле не является, и строковые функции под ней с русским языком работают некорректно.

  3. Написание домена сайта трудностей вызвать не должно.

    Однако до тех пор, пока существуют криворукие хостеры, у которых глобал $_SERVER возвращает не то написание домена, что Вы видите в адресной строке браузера, а альтернативное ему (с www. или без), Вы всегда имеете шанс нарваться именно на такого криворукого хостера.

    Это проявляется в бесконечном редиректе при обращении к сайту, если в настройках рассматриваемого файла написать домен определённым образом. Скажем, написали с www - всё работает. Написали без - возникает бесконечный редирект. Или наоборот.

    В этом случае Вы уже понимаете, кто виноват.
    Точно не скрипт, и не его автор.

    Вам остаётся либо смириться с данностью, и использовать то написание домена, которое не вызывает редиректа. Либо, если это неприемлемо, заставить саппорт хостера привести в порядок глобал $_SERVER

    Настоятельно рекомендуется сразу заставить саппорт хостера пойти на подвиг, оторвавшись от игрушки. Ибо в любой момент неадекватный глобал может впасть в противоположную крайность, Ваш сайт упадёт в даун, а всё, что попало в индекс поисковых систем, пропадёт зря. Потому как теперь у Вас зеркало домена будет альтернативным, а для поисковых систем это не одно и то же.

  4. Про логин, пароль, емайл и ключ шифрации, а также про необходимость их сходу заменить, долгие разговоры вести глупо.

  5. Расширение файлов движка меняйте, как хотите.
    Не забывая, что оно прописывается и в .htaccess файле в корне скрипта:
    (в данном случае надо менять на свой вариант запись про .html)

1
2
3
4
5
6
7
8
DirectoryIndex go.php
RewriteEngine on
 
RewriteRule ^.htaccess$ - [F]
 
RewriteRule ^(.*).html$ go.php
RewriteRule ^(.*)/$ go.php
RewriteRule ^$ go.php

В дополнение к последнему пункту.
В ответ на не заданный вопрос про "а зачем оно так?"

Обратите внимание, что корневым файлом скрипта является не традиционный index.php, а go.php файл - именно он назначен на эту должность первой же строкой в хтакцессе.

Зачем это сделано? Тут ноу-хау.

К сожалению, юзеры склонны пользоваться абсолютно незащищёнными FTP-клиентами, откуда вытащить доступ к ФТП способен даже самый тупой вирус. Что он и делает, буде нарисуется на компьютере юзера (а это неизбежно). Заливая далее код заражения во все доступные индексные файлы index.xxx, которые увидит через тут же открываемое им FTP-соединение.

Чтобы юзеры с насквозь дырявыми FTP-клиентами не беспокоили автора скрипта воплями про "сайт вдруг ни с того ни с сего умер", а постигали Дао в сосредоточенном спокойствии, в составе скрипта нет индексных файлов, кроме специального жертвенного. Его можно заражать чем угодно и как угодно помногу раз подряд. В работе скрипта он никак не участвует, и на функционировании сайта это совсем не скажется.