Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Установка и настройка Perl

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Без описания
Petro
Отправлено: 26 Марта, 2010 - 16:47:22
Post Id



Гость


Покинул форум
Сообщений всего: 126
Дата рег-ции: Март 2010  


Помог: 2 раз(а)




Скачал ActivePerl-5.10.1.1007-MSWin32-x 86-291969.msi установил на диск С:\Perl\
Зашел в папку bin и запустил ppm.bat и я так понимаю что сделал какие то обновления. Что еще нужно делать при настройке?
http://forum.php.su/topic.php?fo...m=65&topic=3 сдесь был, для меня сложнова то было понять что там написано, и не уверен что вообще что то понял.

Моя цель на данный момент настроить Perl для Windows 2007
(Добавление)
Apache2,2,15 и PHP5 установлен и работает.


-----
Нет ничего более постоянного, чем временное.
 
 Top
JustUserR Модератор
Отправлено: 26 Марта, 2010 - 17:02:37
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Petro пишет:
Моя цель на данный момент настроить Perl для Windows 2007 Apache2,2,15 и PHP5 установлен и работает.
Вы имеете в виду настроить Perl для работы с Apache по CGI-интерфейсу? В таком случае настройка не так уж и сложна
1 Заходите в конфигурационный файл Apache и проверяете наличие модуля mod_cgi и находите строчку AddHandler cgi-script .ext1 .ext2 .ext2 и добавляете в нее через пробел расширения для запуска Perl-скриптов
2 В папке с находящимися в ней Perl-скриптами создаете файл .htaccess со строчками Options +ExecCGI и Options -Indexes
3 В самих Perl-скриптах в качестве пути к интерпретатору в первой строке указываете #!c:/perl/bin/perl.exe
Если при такой настройке у вас все заработает то будетм далее улучашть пути Улыбка


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Petro
Отправлено: 26 Марта, 2010 - 17:29:17
Post Id



Гость


Покинул форум
Сообщений всего: 126
Дата рег-ции: Март 2010  


Помог: 2 раз(а)




Извините за мою неграмотность, я полный ноль, но желания немеряно )

1 Заходите в конфигурационный файл Apache и проверяете наличие модуля mod_cgi
- есть.
и находите строчку AddHandler cgi-script .ext1 .ext2 .ext2
-есть.
и добавляете в нее через пробел расширения для запуска Perl-скриптов
- а какие нужны расширения для запуска? или где их увидеть, найти, узнать?

2. В папке с находящимися в ней Perl-скриптами
- как эта папка называется? bin?
создаете файл .htaccess со строчками Options +ExecCGI и Options -Indexes
- имя файла брать любое?
stroki.htaccess
и внем

Options +ExecCGI
Options -Indexes

3. В самих Perl-скриптах
- это где?
в качестве пути к интерпретатору в первой строке указываете #!c:/perl/bin/perl.exe


-----
Нет ничего более постоянного, чем временное.
 
 Top
JustUserR Модератор
Отправлено: 26 Марта, 2010 - 18:40:41
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Petro пишет:
... Желания немеряно )
Это хорошо потому что Perl очень полезный язык особенно для CGI-интерфейса Улыбка
Petro пишет:
И добавляете в нее через пробел расширения для запуска Perl-скриптов - а какие нужны расширения для запуска? или где их увидеть, найти, узнать?
Добавьте .cgi и .pl если их там еще нет - если есть то хорошо и вводить ничего не надо
Petro пишет:
В папке с находящимися в ней Perl-скриптами - как эта папка называется? bin?
Нет-нет Эта папка должна лежать в web-пространстве - скажем где лежит какой-то из ваших сайтов настроенных на виртуальный хост
Petro пишет:
Имя файла брать любое? stroki.htaccess
Нет - файл так дословно называется .htaccess без чего-либо слева от точно - если windows не дает создать то сделайте из консоли echo. >.htaccess
Petro пишет:
В самих Perl-скриптах- это где? в качестве пути к интерпретатору в первой строке указываете #!c:/perl/bin/perl.exe
Это в тех самых программах на Perl которые будут лежать в web-пространстве :0(


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Petro
Отправлено: 29 Марта, 2010 - 12:24:59
Post Id



Гость


Покинул форум
Сообщений всего: 126
Дата рег-ции: Март 2010  


Помог: 2 раз(а)




Все сделал. Папку с файлом .htaccess положил в папку www/perl/ там будут хранится мои программы на perl. Дело в том что мой единственный сайт выводит вот такую строчку Hello world Хорошо
(Добавление)
Ну я даю, а вопрос и не задал.
Как теперь мне проверить работает Perl или нет?


-----
Нет ничего более постоянного, чем временное.
 
 Top
JustUserR Модератор
Отправлено: 29 Марта, 2010 - 14:02:29
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Petro пишет:
Ну я даю, а вопрос и не задал.
Как теперь мне проверить работает Perl или нет?
Итак для начала надо уточнить - ваши HTML-документы хранятся в папке www - а Perl-скрипты будут храниться в папке www/perl и обе доступны из web-пространства - то есть к ним можно обратиться через http://mysite/perl
Далее создаете Perl-скрипт следующего содержания и сохраняете его в папку www/perl под именем my.pl
CODE (perl):
скопировать код в буфер обмена
  1. #!c:/perl/bin/perl.exe
  2. echo "Content-type: text/html\n\n";
  3. echo "Yes! It works!";
Потом запускаете в браузере http://mysite/perl/my[dot]pl и смотрите результат


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Petro
Отправлено: 29 Марта, 2010 - 14:26:42
Post Id



Гость


Покинул форум
Сообщений всего: 126
Дата рег-ции: Март 2010  


Помог: 2 раз(а)




Скрипт создал успешно, с этим проблем не возникло.
А вот с сайтом дела плохи наверно.
я делал так http://localhost/ на что получал вот такой результат Hello world
в папке www хранится файл index.php
еще в ней есть папки cgi-bin, cgi, perl

уточню, эту папку (www) я создал по ходу установки Apache 2.0.xx и PHP5 в Windows (http://www.php.su/prepare/?apache2_php5_win)
(Добавление)
Вот. Как мне сделать http://mysite/ или что то подобное. Или нужно делать вот так http://localhost/mysite/i.php
Или мне нужен денвер. насколько я знаю туда входит и апачь и мускл и php типа полного комплекта, но тогда зачем я ставил все по отдельносьти, мне кажется что я запутался в 3-х березах Огорчение


-----
Нет ничего более постоянного, чем временное.
 
 Top
JustUserR Модератор
Отправлено: 29 Марта, 2010 - 15:33:56
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Petro пишет:
Как мне сделать http://mysite/ или что то подобное
Создать соответствующий виртуальный хост - для этого заходите в конфигурационный файл httpd.conf и в блоке виртуальных хостов прописывате такой блок
CODE (htmlphp):
скопировать код в буфер обмена
  1. NameVirtualHost IP:80
  2. <VirtualHost IP:80>
  3. ServerName mysite
  4. DocumentRoot "c:/apache/www/mysite"
  5. <Directory "c:/apache/www/mysite">
  6. Allow from all
  7. Options +Indexes
  8. </Directory>
  9. </VirtualHost>
В данной случае IP это адрес прослушки например 127.0.0.1 - и далее чтобы вы могли обращаться к http:/mysite/ пропишите в файле c:\windows\system32\drivers\etc\hosts следующую строчку на отдельной строке 127.0.0.1 mysite
Petro пишет:
Или мне нужен денвер
Можно поставить и его но лучше разобраться самому Улыбка


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Petro
Отправлено: 29 Марта, 2010 - 16:05:58
Post Id



Гость


Покинул форум
Сообщений всего: 126
Дата рег-ции: Март 2010  


Помог: 2 раз(а)




все сделал

ServerRoot "C:/Program Files/Apache Group/Apache2"

#
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, instead of the default. See also the <VirtualHost>
# directive.
#
# Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses.

#
#Listen 12.34.56.78:80
Listen 80

NameVirtualHost IP:80
<VirtualHost IP:80>
ServerName mysite
DocumentRoot "c:/apache/www/mysite"
<Directory "c:/apache/www/mysite">
Allow from all
Options +Indexes
</Directory>
</VirtualHost>


#
# Dynamic Shared Object (DSO) Support
#
# To be able to use the functionality of a module which was built as a DSO you
# have to place corresponding `LoadModule' lines at this location so the
# directives contained in it are actually available _before_ they are used.
# Statically compiled modules (those listed by `httpd -l') do not need
# to be loaded here.
#
# Example:
# LoadModule foo_module modules/mod_foo.so
#
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
#LoadModule auth_digest_module modules/mod_auth_digest.so
#LoadModule authn_alias_module modules/mod_authn_alias.so
#LoadModule authn_anon_module modules/mod_authn_anon.so
#LoadModule authn_dbd_module modules/mod_authn_dbd.so
#LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authn_file_module modules/mod_authn_file.so
#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
#LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
#LoadModule authz_owner_module modules/mod_authz_


При наборе http://mysite/perl/my[dot]pl выводит
#!c:/perl/bin/perl.exe
echo "Content-type: text/html\n\n";
echo "Yes! It works!";

и при наборе http://mysite/perl/
выводит

Forbidden

You don't have permission to access /perl/ on this server.

и еще при наборе http://mysite/ так же как и при наборе http://localhost/
выводит
Hello world
(Добавление)
И еще строчка c:/apache/www/mysite у меня www находится по такому пути c:/www/


-----
Нет ничего более постоянного, чем временное.
 
 Top
JustUserR Модератор
Отправлено: 29 Марта, 2010 - 16:49:59
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Petro пишет:
Все сделал
Хорошо Главное проследите за тем чтобы объявление VirtualHost находилсоь после объявления прав основных www-папок
Petro пишет:
И при наборе http://mysite/perl/ выводит Forbidden
Здесь все верно - обычно содержимое то есть список файлов в папке с CGI-скриптами скрывают
Petro пишет:
При наборе http://mysite/perl/my[dot]pl выводит
Это плохо - значит отработчки AddHandler cgi-script .exe .pl .cgi не сработал
Хотя необходимо проверить директиву отвечающую за работу shebang-конструкции под windows - а именно УБРАТЬ директиву ScriptInterpreterSource registry чтобы путь к интерпретатору брался из этой конструкции
Вообще для начальной проверки советую сделать простенький exe-файл который выводит то же саоме что и приведенный выше Perl-скрипт и запустить его - это даст возможность проверить правильность настройки CGI-интерфейса


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Petro
Отправлено: 29 Марта, 2010 - 17:26:59
Post Id



Гость


Покинул форум
Сообщений всего: 126
Дата рег-ции: Март 2010  


Помог: 2 раз(а)




первым делом проверил AddHandler cgi-script .exe .pl .cgi и действительно небыло .exe и .pl , добавил.
виводит все то же что и раньше
Попробовал my.exe в нем
#!c:/perl/bin/perl.exe
echo "Content-type: text/html\n\n";
echo "Yes! It works!";

ввожу http://mysite/perl/my[dot]exe
начинает загружаться что то.

УБРАТЬ директиву ScriptInterpreterSource registry не смог, незнаю как и от куда ее убирать. здесь (httpd.conf) такого нет.
(Добавление)
Остановил и потом снова запустил Apache, ввел http://mysite/perl/my[dot]pl и получил

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, petro@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.
(Добавление)
Я вот еще что думаю может я вот эти строки не туда вставил

NameVirtualHost IP:80
<VirtualHost IP:80>
ServerName mysite
DocumentRoot "c:/apache/www/mysite"
<Directory "c:/apache/www/mysite">
Allow from all
Options +Indexes
</Directory>
</VirtualHost>

(Отредактировано автором: 29 Марта, 2010 - 17:32:01)



-----
Нет ничего более постоянного, чем временное.
 
 Top
Petro
Отправлено: 30 Марта, 2010 - 13:10:49
Post Id



Гость


Покинул форум
Сообщений всего: 126
Дата рег-ции: Март 2010  


Помог: 2 раз(а)




Проделал все тоже самое у себя дома (windows XP SP2)
Результат получился тот же что и на работе с windows 2007

Может нужно все по новой переделать, возможно что где то что то пропустил Не понял


-----
Нет ничего более постоянного, чем временное.
 
 Top
JustUserR Модератор
Отправлено: 30 Марта, 2010 - 13:35:56
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Petro пишет:
Остановил и потом снова запустил Apache, ввел http://mysite/perl/my[dot]pl и получил Internal Server Error
Это хорошо - вы заставили файлы с расширениями exe и pl запускаться в качестве CGI-скрипта от имени Apache - однако пока что ни не выдают приемлемым вывод или Apache не может найти путь к интерпретатору Perl (Так как обычно для обхода используют пути без диска Улыбка
Petro пишет:
Попробовал my.exe в нем
Нет ну exe-шник должен быть настоящий - например перегоните ваш Perl-скрипт в exe с помощью программы Perl2exe (Можете скачать ее в интернете - она вам еще может пригодиться Улыбка
Petro пишет:
УБРАТЬ директиву ScriptInterpreterSource registry не смог, незнаю как и от куда ее убирать. здесь (httpd.conf) такого нет.
Это хорошо раз не было
Помните что достаточно существенную часть работы мы уже с вами сделали Улыбка


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Petro
Отправлено: 30 Марта, 2010 - 14:21:50
Post Id



Гость


Покинул форум
Сообщений всего: 126
Дата рег-ции: Март 2010  


Помог: 2 раз(а)




Скачал я perl2exe , а как пользоваться ни где не могу найти. Вернее нахожу но там просто говорится перегоните в exe или так с .pl в .exe, а что при этом жать и где должен быть этот файл или куда его копировать, или где он должен потом быть Не понял


-----
Нет ничего более постоянного, чем временное.
 
 Top
JustUserR Модератор
Отправлено: 30 Марта, 2010 - 14:57:31
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Кстати попробуйте заменить директиву
Petro пишет:
#!c:/perl/bin/perl.exe
на /perl/bin/perl - вероятно такой путь его устроит - главное проверьте наличия файла perl.exe в папке c:\perl\bin\ и проверте чтобы apache и perl были на одном диске


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы по Perl/Python/.NET »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB