Рубрики

Реклама




 

Як пожвавити PERLCGI скрипт


Дана стаття покликана допомогти узяти “швидкий старт” тим, хто вирішив будувати Web-додатки “своїми руками” і вибрав як засіб для їх створення мову програмування Perl (Practical Electric Rubbish Lister). Тут ви знайдете відомості про те де “взяти” Perl-интерпретатор і як його встановити, які існують способи відладки Perl-програми, а в завершенні ознайомитеся з найпростішою Perl-програмкою.


Почнемо з того, що Perl - це мова для створення серверних скриптів (літературний еквівалент - сценарій), тобто Perl-програма виконується на Web-сервері, а не на комп’ютері користувача, як, наприклад JavaScript-сценарії або Java-апплети. Тому для перевірки ваших творінь одного браузера буде мало, необхідно мати доступ до Web-серверу. Найпростіший спосіб дозволу даної проблеми - використовувати для відладки Perl-програми сервер в Internet, на якому дозволено виконання сценаріїв. Але в цьому випадку, перше - ви витрачаєте свій кровно зароблений гріш, друге - насолоджуєтеся “швидкістю з’єднання з Internet” -). Я ж хочу запропонувати вам декілька альтернативних методів відладки Perl-программ, які, сподіваюся, позбавлять вас від вищеописаних незручностей.

Отже

Метод1. Встановити на своєму комп’ютері Web-сервер і працювати з ним як із звичайним Internet-сервером.

Метод2. Скористатися спеціальними програмами-відладчиками.

Метод3. Перенаправляти результати роботи інтерпретатора у файл (стандартна можливість будь-якої ОС).

У кожного з цих способів є свої переваги і недоліки. Але перш ніж застосувати один з вищеописаних методів, потрібно набудувати Perl-интерпретатор. Насамперед слід завантажити інтерпретатор з Internet. Для OC Windows 9x слід викачати файл по наступній URL-адресі: http://www.activeware.com/download/ActivePerl/Windows/5.6/ActivePerl-5.6.0.613.msi . Якщо ви ж використаєте іншу ОС, завантажте сторінку за адресою http://www.activeware.com/download, на ній виберіть відповідне посилання, після чого “викачуйте” запропонований для цієї мети файл.
Після закінчення процесу завантаження, запустіть файл ActivePerl-5.6.0.613.msi або відповідний файл для вашої ОС. Почнеться процедура установки, в процесі якої вам належить відповісти на ряд питань. Зокрема, про те, в яку директорію потрібно встановити інтерпретатор (встановлювати Perl бажано по наступному шляху: диск:\usr).
Web-сервер (наприклад, Apache) “дізнається” про те, яку програму необхідно запускати для інтерпретації скрипта з першого рядка програмного коду скрипта. Наприклад, рядок #!/usr/bin/perl означає, що інтерпретатор знаходиться в директорії /usr/bin і має ім’я perl.
Далі детально розглядаються всі вищеперелічені методи відладки Perl-програм.
Метод 1

Головна перевага даного методу - це те, що робота з вашим сервером повністю аналогічна роботі з “реальним” Internet-сервером. Основний же недолік полягає в тому, що ви бачите тільки остаточний результат виконання скрипта, і не можете прослідкувати його виконання по кроках. Максимальна ефективність досягається при використанні даного методу в комплексі з методами 2 і 3, які описуються нижче.
Як Web-сервера рекомендую використовувати Apache (це один з найпоширеніших, надійніших серверів, а головне, що він безкоштовний). Для коректної роботи Apache під Windows 95 необхідно встановити Winsock 2 (для Windows 98 і Windows NT 4.0 цю процедуру не буде потрібно). Завантажте з сайту фірми Microsoft файл W95ws2setup.exe (http://www.microsoft.com/windows/downloads/bin/W95ws2setup.exe) і запустите його. Відбудеться установка Winsock 2. Тепер викачуємо файл apache_1_3_12_win32.exe для установки Apache під Windows (http://www.apache.org/dist/binaries/win32/apache_1_3_12_win32.exe). Після установки сервера, його необхідно конфігурувати. Для цього в будь-якому текстовому редакторові відкриваємо файл httpd.conf, який знаходиться в підпапці Conf теки, в яку був встановлений Apache. Далі виконуєте наступні дії по конфігурації сервера:
1. Знаходимо рядок DocumentRoot і прописуємо фізичний шлях до кореневого каталога (сайту). У мене, наприклад, цей шлях наступний “C:/FrontPage Webs/Content/mudconnector/” (відмітьте, що при вказівці шляху використовується Unix роздільник, навіть в середовищі Windows). Кореневий каталог є для сервера стартовою крапкою при пошуку документів. Звернення до кореневого каталога здійснюється по URL-адресі, в якій вказано тільки ім’я сервера (ім’я теки або сторінки не вказується). Зазвичай при використанні терміну каталог опускають слово “віртуальний”. Віртуальними каталогами є директорії (теки), доступ до яких через Web здійснюється по логічному імені (псевдоніму). Фізично ці теки можуть знаходитися в будь-якому місці на вашому жорсткому диску або на іншому комп’ютері. При створенні віртуальному каталогу привласнюється псевдонім, який ставиться у відповідності фізичному шляху до нього.
2. Трохи нижче знаходиться рядок із словом Directory і прописуємо той же шлях (”C:/FrontPage Webs/Content/mudconnector/”).
3. Рядок із словами Options All говорить про те, що включені всі можливості сервера, у тому числі і підтримка cgi.
4. У рядку із словами ScriptAlias /cgi-bin/ вказуємо шлях до cgi-bin каталога (у моєму випадку цей шлях “C:/Apache/cgi-bin/”).
5. Трохи нижче в рядку із словом Directory вказуємо той же шлях “C:/Apache/cgi-bin”
6. Додаємо рядок AddHandler cgi-script .cgi .pl. Тим самим даємо зрозуміти серверу, що всі фали з розширенням .cgi, .pl - є cgi виконуваними, тобто програмами.
Отже, налаштування сервера завершена. Якщо ви зробили все правильно, то після запуску файлу apache.exe на екран буде виведено повідомлення типу “Apache/1.3.12 (Win32) running…”. Тепер завантажте браузер і введіть URL-адрес http://localhost. У браузер буде завантажена домашня сторінка кореневого Web-вузла - index.html (на моєму комп’ютері фізичний шлях до цієї сторінки C:/FrontPage Webs/Content/mudconnector/index.html)
Тепер перевіримо, як виконується Perl-програма на нашому сервері. Для цього створимо простеньку програмку, текст якої приведений нижче:
#!/usr/bin/perl
print “Content-type: text/html\n\n”;
print “Ура працює!\n”;
У текстовому редакторові створіть новий файл і введіть вищенаведений код програми. Збережіть даний файл, наприклад, під ім’ям test.pl у теці cgi-bin, яка знаходиться в теці, в яку ви встановили Apache. Після цього перейдіть в браузер і введіть URL-адрес http://localhost/cgi-bin/test.pl. У браузер завантажиться сторінка, що містить довгождане повідомлення Ура працює! Це означає, що ви перемогли! Тепер можна закричати “Ура!”
Метод 2

Відладчик, яке це солодке слово для програміста. Звичайно ж, використовуючи відладчик, ви на порядок швидше дістанетеся до цього підлого Глюка, який заважає зробити робочу програму. Але давайте серйозно. Існує досить багато програм-відладчиків для Perl-програм. Всі вони мають свої плюси і мінуси. Розглянемо найбільш популярні з них:
Perl Builder (http://www.querybot.com/perlbuilderev.exe) - одна з наймогутніших і зручніших програм - відладчиків під W32. З найбільш корисних особливостей даної програми можна виділити: могутній механізм відладки скриптів, можливість проглядання значень змінних, дуже зручний інтерфейс емуляції Cgi-запросів, приємний (дружній) призначений для користувача інтерфейс. Єдиний мінус, як для нас, жителів СНД, це те, що дана програма комерційна
DzSoft Perl Editor (http://www.dzsoft.com/download/dzperl22.zip) - ця програма також комерційна. Невелика і дуже зручна програма. Особливості: можливість upload-а скриптів на сервер, швидка вставка (вставка певного шматка коду натисненням, однієї клавіші), можливість редагування змінних оточення, можливість працювати в різних кодуваннях, що дуже зручно для російськомовного користувача.
Perl Studio (http://www.perl-studio.com/pstudio.exe) - дуже могутній інструмент для створення Perl скриптів, функції відладки реалізовані слабше, ніж у вищезазначених “побратимів”, але вбудовано дуже багато функцій, корисних для творця скриптів: автоматизація написання коду (наприклад, SQL запити, SSI - директиви), безліч помічників і будівників, інтуїтивний інтерфейс, хороша документація. Знову ж таки, програма комерційна.
Метод 3

Найпростіший метод роботи з Perl-скриптами. Цей метод, не вимагає ніяких додаткових програм окрім Perl - інтерпретатора і браузера. Суть методу дуже проста: після створення Perl скрипта ми запускаємо інтерпретатор і перенаправляємо результати роботи у файл (наприклад, для скрипта test.pl - perl test.pl > test.htm). Після цього в отриманому файлі видаляємо рядок Content-type: text/html\n\n. Проглядаючи даний файл в браузере, ви отримаєте результат роботи скрипта.

Рекомендується не “зациклюватися” на якому-небудь одному з цих методів, а прагнути використовувати комбінований підхід.

Метки:


(c) Perl.com.ua | Про мову програмування Perl. Книга perl. Perl php. Perl mysql. Cправочник perl. Perl настройка. Про Перл українською.