Работа с виртуальным www-сервером
Я являюсь пользователем виртуального сервера. Хотелось бы узнать поподробней как правильно и эффективно работать с ним.
Последнее время широкую популярность получили виртуальные сервера. Отличие от www-странички заключается в том, что:
- ОАО "ЦентрТелеком" не размещает на нем свою рекламу.
- Имя сервера вы выбираете сами: что-то.kaluga.ru, что-то.ru и т.д. (в отличии от www.users.kaluga.ru/ваше_имя).
- Появляется возможность работать с cgi-скриптами, перенаправление почты, PHP, MySQL, SSI, доступ к файлам статистики и т.д.
В связи с этим у пользователей возникает много вопросов, поэтому я решил написать небольшую инструкцию для работы с виртуальным www-сервером. Все написанное здесь будет в основном касаться работы по тарифному плану "Профессиональный" и "Корпоративный", но кое-что полезное здесь есть и для плана "Минимальный" и "Стандартный". С различиями в тарифных планах можно ознакомиться насервере ОАО "ЦентрТелеком".
Содержание
- FTP-клиент
- Программа для работу по протоколу ssh
- Вход в систему
- Основные команды, которые могут вам пригодиться; документация
- Файловый Менеджер, вьювер, редактор
- Атрибуты файлов
- Запуск приложений по расписанию
- Установленные модули Perl
- MySQL, PHP
- Имена документов по умолчанию. Использование SSI и PHP.
Для работы с виртуальным сервером вам понадобится следующее программное обеспечение: FTP-клиент и программа для работы по протоколу telnet.
В качестве первой программы могу посоветовать Far Manager (сам я начинал работать на компьютере еще в DOS, поэтому привык к программам типа Norton Commander). Его использую не только как файловый менеджер, но и для многих других целей, в том числе и для работы с FTP-серверами. Ну конечно вы можете пользоваться той программой, которая является для вас наиболее удобной и доступной.
О том как настроить FTP-клиент для работы можно прочитать в разделе "Личная www-страница пользователя". Единственно следует уточнить, что закачивать скрипты (можно и html-страницы) необходимо в текстовом (ASCII) режиме (для Far Manager эта опция устанавливается непосредственно в соединении). Объясню почему. Дело в том, что когда вы редактируете файл в Windows и нажимаете Enter для начала новой строки, то автоматически в файл добавляются символы с шестнадцатеричными значениями 0x0D и 0x0A (возврат каретки и переход на новую строку соответственно). В Unix же добавляется только один символ 0x0A. При закачке скриптов в текстовом режиме как раз и устраняется это различие. Если этого не сделать, то у вас может не получиться запустить ваш скрипт из-за того, что не будет найден интерпретатор perl.
Протокол telnet используется для консольного соединения с сервером, с целью выполнения задач по его администрированию, однако с 15.04.2012 его поддержка будет прекращена, вместо него организована возможность работы по ssh . Протокол ssh предоставляет ту же самую функциональность, обеспечивая при этом шифрование всего трафика, в том числе и передаваемых паролей, он устойчив к атакам, обеспечивающим «прослушивание» трафика («снифинг»). Один из популярных клиентов PuTTY.
Ну теперь можно приступить к рассмотрению основных вопросов при работе с виртуальным сервером.Первое что необходимо сделать запустить ssh клиент, ввести имя сервера, имя пользователя и пароль. Реквизиты для входа в систему должны быть такими же как и для подключения к FTP.
По любой команде всегда можно получить подробную справку. Для этого используется команда man, синтаксис: man _имя_команды_ (например, man man).
cd - переход в нужный каталог, cd без параметров перемещает вас в домашний каталог
ls - просмотр содержимого каталога
chmod - изменение режима доступа к файлу
pwd - определить текущий путь к каталогу
which - определить, где находится исполняемая системная программа, например, which sendmail.
touch - с помощью этой команды можно создать файл (touch myscript.pl)
mkdir, rmdir - создание и удаление каталога
rm - удаление файла
cat - вывод содержимого файла
more - постраничный просмотр файла
Конечно не обязательно пользоваться этими командами, многое делается и средствами Midnigth Commander-а.
После того как вы попадете в Unix Shell можно запустить Midnight Commander (MC) по команде mc (запуск с ключом mc -c дает возможность работать в цветном режиме). Встроенный вьювер и редактор вызываются клавишами F3 и F4 соответственно. Если что непонятно, то всегда можно воспользоваться справкой (вызывается клавишей F1). Стоит также добавить, что появилась возможность изменять кодировку отображаемого файла в редакторе и вьювере. Делается это комбинацией клавиш Ctrl+T.
Большое значение имеют атрибуты файла. Все файлы и каталоги по умолчанию имеют владельца и группу имя_пользователя/nobody, а атрибуты [rw-][r--][---]. Не изменяйте их без действительной необходимости. Группа nobody нужна для того чтобы web-сервер, который запускается от имени nobody, имел доступ к вашим файлам. Для остальных же пользователей доступ закрыт. Для того чтобы скрипт, написанный, например, на perl, запускался необходимо установить атрибут на исполнение. Для этого можно воспользоваться командой chmod, но проще это сделать через MC (F9->File->cHmod). Установите такие атрибуты: [rwx][r-x][--x] (т.е. чтение, запись и запуск для владельца, для группы (web-сервер) - чтение и запуск, а для остальных - доступ закрыт). Это даст возможность скрипту запускаться, но прочитать и отредактировать его сможет только владелец, что защитит вас в том случае, если у вас в программе хранятся пароли или вы не хотите, чтобы другие пользователи подсмотрели код вашей программы. Наш веб-сервер настроен таким образом, что все скрипты выполняются от имени владельца, поэтому скрипт может обращаться к вашим файлам, имеющим атрибут [rw-][---][---].
Также атрибуты на файл можно установить через FTP. Для этого в Far Manager достаточно нажать на имени файла Ctrl-A и далее выбрать нужные вам атрибуты.
Еще одна неплохая возможность - это выполнение ваших приложений по расписанию (в Unix для этого используется команда crontab). Например, у вас на страничке находятся новости или курс доллара, которые вы считываете с другого сервера. Тогда можно написать программу, которая выполняет нужные вам действия, а результаты помещает в файл. Далее настраиваете запуск этой программы по расписанию (например, каждый час). А ваш скрипт, формирующий образ страницы, в свою очередь берет данные из файла. Чем это лучше того если брать, например, курс доллара непосредственно с какого-то сервера во время открытия страницы? Да тем, что данный сервер может быть загружен, недоступен в это время и на вашей странице вместо курса доллара будет пустое место или сообщение об ошибке.
Для того чтобы добавить задание выполните команду "crontab -e". Описание формата конфигурационного файла можно посмотреть "man 5 crontab". А если коротко, например:
* */1 * * * /home/test/cgi/dollar.pl > /home/test/cgi/dollar.txt
Здесь каждый час выполняется скрипт dollar.pl и результаты его работы записываются в файл dollar.txt. Все поля до имени команды должны быть разделены табуляцией и не забудьте нажать Enter, чтобы перевести курсор на новую пустую строку (это важно). Далее нажимаем F2 (запись файла) и F10 (выход из режима редактирования).
Чтобы определить какие модули Perl установлены на нашей системе, вы можете воспользоваться командой "perldoc perllocal".
На нашем хостинге произошли изменения в библиотеке perl GD - был произведен апгрейд до версии 2.07. Теперь данная библиотека не поддерживает формат GIF.
На нашем хостинге также установлен MySQL сервер, работа с которым становится возможным для тарифного плана "Корпоративный". Есть возможность работать с PHP, который поддерживает работу с MySQL и с библиотекой GD v.2.
Документ по умолчанию (индексный файл) должен иметь имя default.htm или index.htm. Если необходимо включить поддержку SSI (Server Side Include), то имя документа должно быть default.shtml, расширение .shtml для других документов с SSI. Для поддержки кода PHP - default.phtml и расширение .phtml для остальных документов с PHP.