Автор Тема: mod_perl  (Прочитано 11534 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
mod_perl
« : 10 Апреля 2006, 13:45:40 »
А вобще как сделать чтоб mod_perl не работал с апачаеского правами

То есть сменить пользователя....???????

И возможно ли к каждому виртуальному хосту сделать чтоб он запускался со своими правами....

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
mod_perl
« Ответ #1 : 10 Апреля 2006, 14:06:27 »
МММММММ да вроде ответ нашёл...


The answer is No. The reason is that you can\'t "suid" a part of a process. mod_perl lives inside the Apache process, so its UID and GID are the same as the Apache process.

You have to use mod_cgi if you need this functionality.

Another solution is to use a crontab to call some script that will check whether there is something to do and will execute it. The mod_perl script will be able to create and update this todo list.

Оффлайн xmolex

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 75
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
mod_perl
« Ответ #2 : 10 Апреля 2006, 14:14:44 »
Цитировать
djkostya:
И возможно ли к каждому виртуальному хосту сделать чтоб он запускался со своими правами....

suexec рулит

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
mod_perl
« Ответ #3 : 10 Апреля 2006, 14:16:56 »
xmolex и чё с этим suexec делать ????????

Оффлайн xmolex

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 75
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
mod_perl
« Ответ #4 : 10 Апреля 2006, 14:21:13 »
Он должен стоять в апаче.
А потом в конфиге виртуального хоста прописываешь
SuexecUserGroup user group

После этого рестартишь сервер и твои скрипты на этом вирт. хосте выполняются от этого пользователя.
Если что не так, смотри в логах суехека, по дэфолту в /usr/local/logs/

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
mod_perl
« Ответ #5 : 10 Апреля 2006, 14:30:29 »
Вот мой конфиг mod_perl а

И куда его вставлять

   Alias /mod/ "/home/site/mod/"
   PerlModule Apache::Registry
   PerlModule header::header::header
   
         SetHandler perl-script
              PerlHandler header::header::header
         PerlHandler Apache::Registry
              Options ExecCGI
              allow from all
         PerlSendHeader On
       

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
mod_perl
« Ответ #6 : 10 Апреля 2006, 14:37:29 »
У меня апач 1 версии

Оффлайн xmolex

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 75
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
mod_perl
« Ответ #7 : 10 Апреля 2006, 14:47:09 »
Ну, вставлять тебе его нужно в httpd.conf, но ты когда mod_perl ставишь он сам дописывается в httpd. mod_perl по всякому будет работать с апачевскими правами. Единственное что ты можешь сделать это использовать suexec. Зайди в директорию bin, где установлен apache и посмотри есть ли там suexec. Если есть введи ./suexec -V, и посмотри пути. Если пути не правельные нужно пересобрать suexec и новый поместить в bin апачевский. А потом поместить SuexecUserGroup user group в твой файл конфига виртуального сервера.

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
mod_perl
« Ответ #8 : 10 Апреля 2006, 14:52:36 »
так давай по порядку

 -D DOC_ROOT="/home"
 -D GID_MIN=1000
 -D HTTPD_USER="www"
 -D LOG_EXEC="/var/log/httpd-suexec.log"
 -D SAFE_PATH="/bin:/usr/bin:/usr/local/bin"
 -D UID_MIN=1000
 -D USERDIR_SUFFIX="public_html"


Всё вроде правильно в отношении путей....


Syntax error on line 1502 of /usr/local/etc/apache/httpd.conf:
Invalid command \'SuexecUserGroup\', perhaps mis-spelled or defined by a module not included in the server configuration


То есть я как понимаю у меня нет модуля...
Где блин его взять ??????

Оффлайн xmolex

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 75
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
mod_perl
« Ответ #9 : 10 Апреля 2006, 15:20:22 »
Извини перепутал.
SuexecUserGroup - это во втором апаче
Тебе надо
User что-то Group что-то

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
mod_perl
« Ответ #10 : 10 Апреля 2006, 15:27:20 »
xmolex
 ты знаешь не пашет всё равно выполняеться из под пользвателя апача

Оффлайн xmolex

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 75
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
mod_perl
« Ответ #11 : 10 Апреля 2006, 15:55:05 »
Посмотри что пишется в логах суехека.

Оффлайн cr4ck3r

  • Фанат Perl
  • Постоялец
  • ***
  • Сообщений: 146
  • +0/-0
  • 2
    • Просмотр профиля
    • http://perlmonks.org.ru
mod_perl
« Ответ #12 : 10 Апреля 2006, 16:42:09 »
посмотри сперва как у тебя апач собран:
httpd -l что выводит? (suexec WRAPPER enable? или нет)
Ворота в perl - perlmonks.org.ru

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
mod_perl
« Ответ #13 : 10 Апреля 2006, 16:46:08 »
http_core.c
  mod_so.c
suexec: enabled; valid wrapper /usr/local/sbin/suexec

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
mod_perl
« Ответ #14 : 10 Апреля 2006, 16:46:38 »
Короче давайте по порядку...
Щас я попробую по другому сделать

 

Sitemap 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