Решил я тут установить на своей машине в качестве эксперимента форум на PunBB для локалки. Скачал последнюю сборку, распаковал куда нужно, установил необходимые пакеты - php5 и lighttpd в качестве сервера, но при попытке запустить установку через http://xxx.xxx.xxx.xxx/install.php вылезает предложение его сохранить. Я в конфиге сервера прописывал mimetype для php, к тому же там уже была ссылка с указание использовать типы из /etc/mime.types, но даже поле этого php-файлы не читаются. В чем проблема?

Если ничего не поможет поставь просто другой сервер. Я много раз устанавливал на Appserv и Denver. Никаких проблем не было

Если ничего не поможет поставь просто другой сервер.

Да вроде должно работать. Может я просто какой-то пакет, касающийся php, не установил? Или в кнфиге сервер что-то не прописал? Тут похоже проблема в чтении php-страниц.

Попробуй спроси тут
http://php.ru/forum/viewtopic.php?t=6808

igorsub
На инстол.пхп стоят права на выполнение?

На инстол.пхп стоят права на выполнение?

Угу, он лежит в домашней папке.

Вот, если что, конфиг сервера:

Выделить код

Код:

# Debian lighttpd configuration file
# 

############ Options you really have to take care of ####################

## modules to load
# mod_access, mod_accesslog and mod_alias are loaded by default
# all other module should only be loaded if neccesary
# - saves some time
# - saves memory

server.modules              = ( 
            "mod_access",
            "mod_alias",
            "mod_accesslog",
#           "mod_rewrite", 
#           "mod_redirect", 
#           "mod_status", 
#           "mod_evhost",
#           "mod_compress",
#           "mod_usertrack",
#           "mod_rrdtool",
#           "mod_webdav",
#           "mod_expire",
#           "mod_flv_streaming",
#           "mod_evasive"
 )

## a static document-root, for virtual-hosting take look at the 
## server.virtual-* options
server.document-root       = "/home/igorsub/punbb/forum"

## where to send error-messages to
server.errorlog            = "/var/log/lighttpd/error.log"

## files to check for if .../ is requested
index-file.names           = ( "index.lighttpd.html",
                               "index.php", "index.html", 
                               "index.htm", "default.htm" )


## Use the "Content-Type" extended attribute to obtain mime type if possible
# mimetype.use-xattr = "enable"

#### accesslog module
accesslog.filename         = "/var/log/lighttpd/access.log"

## deny access the file-extensions
#
# ~    is for backupfiles from vi, emacs, joe, ...
# .inc is often used for code includes which should in general not be part
#      of the document-root
url.access-deny            = ( "~", ".inc" )



######### Options that are good to be but not neccesary to be changed #######

## bind to port (default: 80)
# server.port               = 81

## bind to localhost only (default: all interfaces)
## server.bind                = "localhost"

## error-handler for status 404
#server.error-handler-404  = "/error-handler.html"
#server.error-handler-404  = "/error-handler.php"

## to help the rc.scripts
server.pid-file            = "/var/run/lighttpd.pid"

## 
## Format: <errorfile-prefix><status>.html
## -> ..../status-404.html for 'File not found'
#server.errorfile-prefix    = "/var/www/"

## virtual directory listings
dir-listing.encoding        = "utf-8"
server.dir-listing          = "enable"

## send unhandled HTTP-header headers to error-log
#debug.dump-unknown-headers  = "enable"

### only root can use these options
#
# chroot() to directory (default: no chroot() )
#server.chroot            = "/"

## change uid to <uid> (default: don't care)
server.username            = "www-data"

## change uid to <uid> (default: don't care)
server.groupname           = "www-data"

#### compress module
#compress.cache-dir          = "/var/tmp/lighttpd/cache/compress/"
#compress.filetype           = ("text/plain", "text/html")

#### status module
# status.status-url = "/server-status"
# status.config-url = "/server-config"

#### url handling modules (rewrite, redirect, access)
# url.rewrite                 = ( "^/$"             => "/server-status" )
# url.redirect                = ( "^/wishlist/(.+)" => "http://www.123.org/$1" )

#
# define a pattern for the host url finding
# %% => % sign
# %0 => domain name + tld
# %1 => tld
# %2 => domain name without tld
# %3 => subdomain 1 name
# %4 => subdomain 2 name
#
# evhost.path-pattern = "/home/storage/dev/www/%3/htdocs/"

#### expire module
# expire.url                  = ( "/buggy/" => "access 2 hours", "/asdhas/" => "access plus 1 seconds 2 minutes")

#### rrdtool
# rrdtool.binary = "/usr/bin/rrdtool"
# rrdtool.db-name = "/var/www/lighttpd.rrd"


#### handle Debian Policy Manual, Section 11.5. urls
#### and by default allow them only from localhost

$HTTP["remoteip"] == "127.0.0.1" {
	alias.url += ( 
		"/doc/" => "/usr/share/doc/",
		"/images/" => "/usr/share/images/"
	)
	$HTTP["url"] =~ "^/doc/|^/images/" {
		dir-listing.activate = "enable"
	}
}

#### variable usage:
## variable name without "." is auto prefixed by "var." and becomes "var.bar"
#bar = 1
#var.mystring = "foo"

## integer add
#bar += 1
## string concat, with integer cast as string, result: "www.foo1.com"
#server.name = "www." + mystring + var.bar + ".com"
## array merge
#index-file.names = (foo + ".php") + index-file.names
#index-file.names += (foo + ".php")


#### external configuration files
## mimetype mapping
include_shell "/usr/share/lighttpd/create-mime.assign.pl"

## load enabled configuration files, 
## read /etc/lighttpd/conf-available/README first
include_shell "/usr/share/lighttpd/include-conf-enabled.pl"

igorsub
Я не особый знаток настройки апачей и пр., но на лайтпд не надо ставить мод_пхп? А, не надо.

LightTPD needs some configuration tweaking to both php.ini and the fastcgi.conf to make PATH_INFO work which the tested PHP application depended on. This is documented in the LightTPD manual.

Что скачивается-то из 1го поста? содержимое пхпшки?

Что скачивается-то из 1го поста? содержимое пхпшки?

Да, сам файл.

igorsub
Значит косяк в настройках лайтпд.

LightTPD needs some configuration tweaking to both php.ini and the fastcgi.conf to make PATH_INFO work which the tested PHP application depended on. This is documented in the LightTPD manual.

Это делал? Или в дебиане он должно из коробки работать?

Это делал?

Я, если честно, не совсем понимаю, что там надо твикать.

Или в дебиане он должно из коробки работать?

А вот черт знает.

igorsub
У тебя cgi/fastcgi не настроено. Если производительность некритична, то проще через cgi пустить. У меня в gentoo в стандартной поставке есть заготовка mod_cgi.conf (ну и mod_fastcgi.conf тоже). Может и у тебя есть. Вобщем привожу свои настройки.

Выделить код

Код:

server.modules += ("mod_cgi")

# NOTE: this requires mod_alias
alias.url = (
     "/cgi-bin/"	    =>	    var.basedir + "/cgi-bin/"
)

#
# Note that you'll also want to enable the
# cgi-bin alias via mod_alias (above).
#

$HTTP["url"] =~ "^/cgi-bin/" {
    # disable directory listings
    dir-listing.activate = "disable"
    # only allow cgi's in this directory
    cgi.assign = (
		".php"  =>      "/usr/bin/php-cgi"
	)
}

У тебя cgi/fastcgi не настроено.

Хм, а как узнать, установленно ли у меня все для работы с CGI? А то меня трезают сомнения.

igorsub
modcgi с lighttpd по-умолчанию собирается вроде (тем более в убунту). А php - проверь, есть ли /usr/bin/php-cgi.

А php - проверь, есть ли /usr/bin/php-cgi.

В /usr/bin вообще нет папок.

Добавлено Втр 28 Авг 2007 23:28:01 :
Наткнулся тут на Wiki по lighttpd. Там сказанно, что нужно установить еще пакет php5-cgi, а у меня его не было. Сейчас установлю и посмотрим, что получится.

Эх, в общем, установил я этот пакет. Появилось php-cgi в /usr/bin. Более того, провел настройку, как сказанно в Wiki, теперь при попытке запустить сервер получаю это:

Выделить код

Код:

igorsub@myKubuntu:~$ sudo /etc/init.d/lighttpd start
 * Starting web server lighttpd                                                                                                         [ OK ]
igorsub@myKubuntu:~$ 2007-08-28 23:54:48: (mod_fastcgi.c.1032) the fastcgi-backend /path/to/php-cgi failed to start:
2007-08-28 23:54:48: (mod_fastcgi.c.1036) child exited with status 9 /path/to/php-cgi
2007-08-28 23:54:48: (mod_fastcgi.c.1039) if you try do run PHP as FastCGI backend make sure you use the FastCGI enabled version.
You can find out if it is the right one by executing 'php -v' and it should display '(cgi-fcgi)' in the output, NOT (cgi) NOR (cli)
For more information check http://www.lighttpd.net/documentation/fastcgi.html#preparing-php-as-a-fastcgi-program
2007-08-28 23:54:48: (mod_fastcgi.c.1044) If this is PHP on Gentoo add fastcgi to the USE flags
2007-08-28 23:54:48: (mod_fastcgi.c.1340) [ERROR]: spawning fcgi failed.
2007-08-28 23:54:48: (server.c.865) Configuration of plugins failed. Going down.

тогда нужно просто подключать библиотеку php2apache в конфиге

Понял, почему у меня ничего не работало. Я забыл указать в конфиге путь к cgi, просто оставил

Выделить код

Код:

"bin-path" => "/path/to/php-cgi",

а нужно было прписать. :blush: Ну может человек ошибиться. :D

Добавлено Срд 29 Авг 2007 03:40:20 :
Теперь буду натсраивать работу базы данных. Думаю использовать SQlite. Как думаете, стоит?

Добавлено Срд 29 Авг 2007 03:56:19 :
Запустил установку, заполнил форму и как и следовало ожидать, вылезла ошибка, а именно:

Выделить код

Код:

An error occured on line 57 in file /home/igorsub/punbb/forum/include/dblayer/sqlite.php.

PunBB reported: Unable to create new database './forum'. Permission denied

Странно, так как я создаю форум в домашнем каталоге, а там права на все имеются.

igorsub
SQlite не стоит юзать для форумов. Бери доморощенный mysql.

SQlite не стоит юзать для форумов.

Почему? SQlite указана как один из видов баз, с которыми работает PunBB. К тому же то, что будет, даже форумом трудно назвать. Я ж говорю эксперимент.
Да и тут дело не в sqlite, а опять в правах.

igorsub
Да можешь хоть на чем делать, хоть оракл качнуть. Просто Sqlite больше заточена под использование в прогах и реально для форумов она не применяется, тебе же, насколько я понимаю, просто потренироваться хочется? Ну так ставь мускуль.

Ну так ставь мускуль.

Да я б с радостью, только возиться с ним придется. Пакетов всяких много, настройка, создание базы. Я до сих пор не могу понять, что там к чему. В sqlite проще все, как мне кажется.

Права у www-data есть на каталог, где база будет?

Права у www-data есть на каталог, где база будет?

Что за www-data?

Под чьими правами запускается-то у тебя сервер?

Под чьими правами запускается-то у тебя сервер?

Ну сервер стартует из-под рута. А иначе никак.

igorsub
Ну как это так никак?

Выделить код

Код:

server.username      = "lighttpd"
server.groupname     = "lighttpd"

server.username = "lighttpd" server.
groupname = "lighttpd"

Я так понимаю, в этом проблема того, почему я не могу создать базу данных? У казанного UID недостаточно прав.

Да. Нужны права на запись в каталог. так что либо меняй владельца каталога, либо права на него

меняй владельца каталога

Пробовал менять на свой аккаунт (igorsub), при старте сервера пишет ошибку при обращении к логу и т. д. Если ставлю рута, то при старте говорит, что не может использовать этого пользователя. По умолчанию установлен www-data, получается, что у этого пользователя нет прав писать в мою домашнюю папку, это могу сделать только я и рут. Что делать с правами в таком случае?

Что делать. Установить.

Выделить код

Код:

chown -R igorsub:www-data /home/igorsub/punbb/forum
chmod -R 775 /home/igorsub/punbb/forum

Один из путей

rurik
Спасибо тебе огромное. Работает. :P

memini

Да можешь хоть на чем делать, хоть оракл качнуть. Просто Sqlite больше заточена под использование в прогах и реально для форумов она не применяется, тебе же, насколько я понимаю, просто потренироваться хочется? Ну так ставь мускуль.

сэру приплачивает оракл? sqlite прекрасно подходит для игр с отладкой SQL и для маленьких webapp'ов.

lakostis

сэру приплачивает оракл? sqlite прекрасно подходит для игр с отладкой SQL и для маленьких webapp'ов.

Это ты меня подколоть захотел? Человек хочет поставить punbb, к чему ты говоришь про игры и маленькие вебаппы?

Человек хочет поставить punbb

Таки поставил. :)

memini

Человек хочет поставить punbb, к чему ты говоришь про игры и маленькие вебаппы?

А punbb - это супер мега ентерпрайз??? Все, больше вопросов не имеем, квалификация ясна.

lakostis
Странный ты человек. И тему sqlite игр в панбиби не раскрыл.

А punbb - это супер мега ентерпрайз???

Где я это говорил? Значение слова хоть понятно? Если что - gramota.ru в помощь.

memini

Странный ты человек. И тему sqlite игр в панбиби не раскрыл.

А что там раскрывать? Поставил sqlite extension и выбрал файл для хранения.

Просто Sqlite больше заточена под использование в прогах и реально для форумов она не применяется, тебе же, насколько я понимаю, просто потренироваться хочется? Ну так ставь мускуль.

Что может значить так - риальные пацаны типа мемини получили свое образование на ресурсах типа LOR и по ссылкам не ходят.

lakostis

свое образование на ресурсах типа LOR

Ты не иначе бабка ванга. В отличие от местных фэнов пингвина на лоры не хожу.

и по ссылкам не ходят.

Опять артачишься? Ты в этом топе ни одной ссылки не оставил. Забыл, ванга, "А тебе посылаю луч реактивной диареи."(c)

igorsub хотел потренироваться с панбиби, на что я резонно заметил, что sqlite крайне редко используется для этих целей, именно поэтому и хостингов с ним крайне мало. Ты же не понятно что сказать хочешь. Впрочем, я гляжу, тебя это не смущает.

Давайте, не будем ссориться. :)

У меня еще вопрос касательно punbb. Я форум, как уже говорил, поставил в ознакомительных целях. Вообще мне хотелось бы сделать небольшой портал. Помнится, когда еще не было главного русского сайта Мозиллы, стояло нечто похожее на портал. Нельзя ли его нигде скачать? (Вариант, который представлен на оф. сайте punbb, тоже классный, но, к сожалению, нигде не выложен.) Те, что лежат на punbb.ru и pures.org, не подходят: либо накрученные, либо не понятно что.

memini

Ты не иначе бабка ванга. В отличие от местных фэнов пингвина на лоры не хожу.

Ах да, ты ж являешся тем леммингом, миллион которых не может ошибаться %) Хотя ладно, какашками буду кидаться в другой теме.

igorsub

Помнится, когда еще не было главного русского сайта Мозиллы, стояло нечто похожее на портал. Нельзя ли его нигде скачать?

Как вот это или это?

Хм, у меня почему-то по этим ссылкам сайты выдаются без использования стилей.

igorsub
Вебархив почему-то css не сохранил :(

Ну в общем, да. Хотелось бы нечто похожее на то, что было. Я бы и сам наверное написал, но в php не силен.

igorsub
так какой из указанных вариантов тебе нужен? Просто второй вариант - это был обычный портал из мамбы, а первый - моя модификация портала с punbb.org. Помойму она до сих лежит в нашем cvs, называется portal.php.

Именно punbb.

igorsub
гм. в cvs этого файла нету. Придется еще дома на диске поискать.

а первый - моя модификация портала с punbb.org

Кстати, а где ты взял php-файлы оф. сайта punbb?

igorsub
Я их не брал :) С оф. сайта была взята только идея и код разметки/стилей.

igorsub
Положил в uploader - _http://forum.mozilla-russia.org/uploaded/portal.zip_

А где взять мод, прикручивающий возможность вставки bbcode с смайлов к быстрому и обычному ответу?

А где взять мод, прикручивающий возможность вставки bbcode

Как и большее количество модулей на http://www.punres.org/viewtopic.php?id=194