Смекни!
smekni.com

Чат, его установка и настройка (стр. 6 из 7)

В строке действуют, клавиши Del и Backspace (для удаления буквы правее и левее курсора). Действуют даже комбинации Ctrl-V и Shift-Ins, по которым можно вставлять в адресную строку содержимое кармана, а также Ctrl-C и Ctrl-Ins, по которым можно скопировать адрес.

3.5.1.3 Создание новых папок

При создании папок по F7 можно создать разом несколько вложенных папок. Например, введя в качестве имени выражение Папка1\Папка2\Папка3, я создаю Папку 1, в ней - Папку 2, а в той - Папку 3, - целую ветку в дереве.

Если написать несколько имен через запятую, то будет создано несколько папок разом. Но чтобы это сработало, в окошке создания папки вы должны поставить крестик в строке Обрабатывать несколько имен папок.

3.5.1.4 Удаление выделенных файлов

Удаление выделенных файлов происходит по F8, но по Shift-F8 удаляется только один файл - тот, на котором стоит курсор, вне зависимости от выделения. Оттащить мышкой в корзину файлы нельзя, потому что вынести что-то из текстового режима Windows в графический невозможно.

FAR удаляет файлы в корзину, что позволит без хлопот их восстановить, если потребуется.

Но если вы абсолютно уверены в себе и вам не хочется лазить в корзину, чтобы еще раз уничтожить уже однажды уничтоженные файлы и папки, можете удалить их в обход корзины по комбинации Shift-Del.

FAR Manager умеет не просто удалять в обход корзины, но и уничтожать, затирать файлы и директории. Для этого предназначена комбинация Alt-Del. Будьте очень осторожны с ней: восстановить не удастся уже ничего.


Внимательно смотрите на сообщения, которые FAR выдает перед удалением в корзину, удалением мимо корзины и полным уничтожением всех выделенных файлов и папок.

3.6 ДОПОЛНИТЕЛЬНАЯ TCL-БИБЛИОТЕКА

Нужно скачать библиотеку libtbcload1.3.so (20 Кб).

Изначально библиотека входит в 15/25-мегабайтный пакет TCLPRO, можно (но не нужно) взять с:

● для Linux, HP-UX, SGI IRIX - версия 1.4 http://dev.scriptics.com/software/tclpro/eval/1.4.html;

● для Linux - версия 1.5 ftp://tcl.activestate.com/pub/tclpro/download/tclpro15.suse71.tar.gz;

● дляFreeBSD, Solaris - версия 1.5 http://dev.scriptics.com/software/tclpro/eval/1.5.html.

Если у вас Linux или FreeBSD, то скачивать 15/25МБ не нужно - возьмите готовый файл (около 20Кб):

● для Linux - http://php.spb.ru/files/libtbcload1.3.so.zip;

● для FreeBSD - http://php.spb.ru/files/libtbcload1.3.so_freebsd.zip.

ВНИМАНИЕ: ЭТО НЕ ZIP-АРХИВЫ! Не пытайтесь их распаковать. После скачивания переименуйте в libtbcload1.3.so. Скопируйте файл в daemon. Расширения ZIP дописаны только для того, чтобы легче было скачать.

Если у вас не Linux/FreeBSD, то скачайте пакет TCLPRO 1.4 или 1.5, установите в любой каталог (в /tmp например) или вручную распакуйте, далее через поиск найдите файл libtbcload1.3.so и перепишите в daemon. После этого все скаченное сотрите.


3.7 НАСТРОЙКА ЧАТА

Если вы не пользуетесь хостином, то настройте в Apache новый виртуальный сервер для чата. Корнем сайта (DocumentRoot) должен быть каталог /home/wwwchat/chat/www. Где именно находится www не важно. Важно, чтобы каталоги www и daemon были в одном месте (в одном каталоге chat). Если у вас эти два каталога не на одном уровне, то нужно будет намного больше путей в конфигах отредактировать (читайте их - там все написано).

Добавьте в описание вашего виртуального хоста Apache следующие команды:

php_value register_globals 1

php_value magic_quotes_gpc 0

php_value display_errors 1 <= показывать ошибки на экране

php_value display_startup_errors 1 <= показывать ситаксические ошибки парсинга на экране

php_value log_errors 1 <= логирование PHP-ошибок в лог Апача

php_value session.use_trans_sid 0

Если их добавить нельзя - не беда. В крайнем случае вы получите сообщение от детектора ошибок и будете вынуждены изменить то, что он попросит сделать. Все эти параметры можно вписать в файл .htaccess из каталога www.

Откройте _dima.php из www. Отредактируйте$wwwhost (совпадающийсServerNameизApache), $os, $rand_password, $cookie_pass.Если хотите, измените порт в $wwwport для чата с 8888 на другой (но не на 80). Если на сервере работают другие чаты - то этот порт наверняка занят.

Откройте dima_chat.conf. Впишите туда то же самое, что было в переменных $wwwhost и $wwp из _dima.php. В $wwwport впишите то, что было в переменной $httpport из _dima.php (по-умолчанию в обоих местах стоит 8888, но можно изменить).

Настройте права на каталоги, запустив 2 комнады:

chmod -R 777 /home/wwwchat/chat/daemon

chmod -R 777 /home/wwwchat/chat/php_sess

Параметр "-R" - рекурсивная замена прав для подкаталогов и всех их файлов. Если сразу после запуска чата кто-то будет жаловаться, что не хватает прав на файлы, то выполните команду chmod -R 777 /home/wwwchat/chat/daemon еще пару раз.

Зайдите в daemon. Необходимо открыть файлы run_this и run_backgound и проверить, что они написаны правильно (или создать, если их нет). Откройте эти два файла, там будет примерно следующее: "bin/tclsh8.3 dima_chat.conf" и "bin/tclsh8.3 dima_chat.conf >/dev/null 2>&1 &". Первым словом (до пробела) идет путь "bin/tclsh8.3" и имя конфига чата из текущего каталога. Путь "bin/tclsh8.3" должен быть верным, т.е. при входе в каталог "bin" там должен быть файл "tclsh8.3". Если файлов нет - значит успешно TCL вы не установили. Если файл называтся чуть-чуть по другому, то напишите правильный путь. Короче говоря, в обоих файлах должен быть либо относительный, либо полный путь к файлам "tclsh" или "tclsh8.3". Кроме bin/tclsh8.3 можно написать просто "tclsh" (или "tclsh8.3"), если TCL был установлен админов сервера для общего пользования. В этом случае TCL будет грузится из каталога /usr/lib/tcl***, а не вашего локального каталога "bin/". Оба файла должны иметь chmod 777, чтобы их можно было запустить.

Последняя настройка dima_chat.conf:

● найдите строку set library "./libtbcload1.3.so" и расскомментируйте ее, удалив "#" из начала строки.

● найдите строку set library "tbcload13.dll" и закомментируйте ее, поставив символ "#" в самое начало.

Должно получится так:

set source "chat.tbc" ;# не пишите "./chat.tbc" или еще что-то, только "chat.tbc"

# библиотека загрузчика для windows, если у вас чат под винду

#set library "tbcload13.dll"

# библиотека загрузчика для unix, если чат под юних

set library "./libtbcload1.3.so" ;# пишитеимяфайлас ./точкой

3.8 ЗАПУСК ЧАТ-СЕРВЕРА

Запускаем из каталога daemon файл ./run_this .

Если видите картину:

$ ./run_this

Config loaded. Your TCL version: 8.3. Wait please...

[19:50] ------------------------------------------------------------

[19:50] CHAT.PHP.SPB.RU, ver 4.06, 06 September 2002

[19:50] ------------------------------------------------------------

[19:50] Chat software (c) Dmitry Borodin, Russia, St.-Petersburg

[19:50] ------------------------------------------------------------

[19:50] Before using, please read licence on http://php.spb.ru/chat!

[19:50] ------------------------------------------------------------

[19:50] PID: 10495, TCL Version: 8.3.4, hostname: chat.php.spb.ru

[19:50] Listing chat.php.spb.ru:8888 ...

[19:50] Encoding iso8859-1 ...

[19:50] Found charset for IRC-frame: windows-1251.

[19:50] Searching old session file...

[19:50] Opening main chat file: www-chat/chat.txt ...

[19:50] ok, file clean

[19:50] *** LOADED (0.35 sec) ***

то чат-сервер успешно запущен.

Еслипоявляетсяошибкасфразой"The TclPro ByteCode Loader is not available or does not support the correct version", тоисправитьможнотак:

● убедиться в версии TCL - только 8.3.х (версия пишется первой строкой при запуске);

● убедиться, что файл libtbcload1.3.so находится в каталоге daemon;

● убедиться, что в dima_chat.conf есть строка set library "./libtbcload1.3.so" и что эта строка РАСКОММЕНТИРОВАНА (а строка set library "tbcload13.dll" наоборот, закомментирована);

● убедиться, что есть строка set source "chat.tbc", а не какая-либо другая ("./chat.tbc" даст ошибку);

● убедиться, что libtbcload1.3.so взят для вашей ОС (если пункты выше точно проверены, то проблема в несовместимости самой библиотеки и ОС).

Если чат не выдает эту ошибку (про "TclPro ByteCode"), то вы обязательно увидите название программы в большой заставке (примерно "CHAT.PHP.SPB.RU, ver 4.06, 06 September 2002"). Далее, чат может завершиться после любой из строк при обнаружении ошибок в конфиге dima_chat.conf. При выходе чат пишет ошибку в виде кода (число от 1 до 999) или нормальной фразы. Если чат вываливается без словесной ошибки, внимательно посмотрите на последнее число, которое выдаст чат. Намного более вероятнее появление нормальной ошибки, типа "нет прав открыть файл" или "невозможно открыть хост:порт". Ошибки из нормальных фраз не баги чата, а проблема настройки. Нужно прочитать сообщение об ошибке и исправить то, о чем там написано.

Если чат завершается с ошибкой после команды "Listen www.чат.ru:8888", то внимательно прочитайте сообщение об ошибке (используйте англо-русский словарь Lingvo или www.translate.ru). Причин может быть две. Либо указанный вами хост не принадлежит серверу, где вы запускаете чат, либо указанный порт занят. Порт может быть любым числом от 1025 до 65535 - попробуйте несколько разных, т.к. по-умолчанию порт 8888 может быть занят другим чатом, который запустил другой пользователь сервера. Чтобы убедится, что хост допустимый, выполните "ping www.чат.ru" (ваш хост укажите - $wwwhost) и далее "ping `hostname`" (напиште слово "hostname" в обратных апострофах!). Если обе команды ping укажут на один и тот же IP-адрес, то выбран допустимый хост. Если команды дадут 2 разных адреса, то вы ошиблись с $wwwhost.

Если видите фразу LOADED, то чат загрузился. Далее читайте логи, где их найти написано в FAQ.

Теперь можно открыть браузер и пойти на ServerName(http://$wwwhost/) вашего сайта.

Как только вы проверите, что работает, вернитесь в шелл, который занят чат-сервером. Прервите его (Ctrl+C) и запустите ./run_background В дальнейшем запускайте именно этот файл для старта чат-сервера. Запускать файл можно только из текущего каталога (т.е. сначала перейти в /home/wwwchat/chat/daemon). Помните - чат-сервер будет работать только до перезагрузки всего сервера хостера! После перезагрузки необходимо будет опять запустить ./run_background или настроить автозапуск с помощью крона или autostart (/etc/rc.d/rc.local).

3.9 СОВЕТЫ ДЛЯ ПОЛЬЗОВАТЕЛЕЙ

3.9.1 После установки чата выдаются ошибки о том, что нет прав

Первый вариант решения: правильно выполнить всю инструкцию снова (все стираем и по новой). Второй вариант: остановить чат-сервер; стереть все из www-chat, www-sess, www-server; запустить chmod -R 777 /home/wwwchat/chat/daemon Как только права выставлены, запускаем чат и более ошибок не будет.