проблеммы с устоновкой апачи под фрибзд

  • Автор темы NOX
  • Дата начала
Статус
Закрыто для дальнейших ответов.
N
#1
действую согласно инструкуции Необходимо разархивировать соответствующие пакеты, предполагая, что GD
уже установлен:
tar zxvf apache_1.3.34.tar.gz
tar zxvf php-4.4.0.tar.gz
Перейти в директорию apache_1.3.34 и дать команду:
./configure
Затем, перейти в директорию php-4.4.0 и дать команду:
./configure --with-apache=../apache_1.3.34 --with-mysql=/usr --enable-track-vars --enable-gd-nativettf
--with-gd --with-jpeg-dir --with-png-dir --with-zlib-dir --enable-sockets --with-pdflib --with-tiff-dir
Примечание:
Если mysql был установлен не из пакетов (rpm или pkg), а из исходных кодов,
в опции --with-mysql следует указать путь: /usr/local/mysql
В случае если вы компилируете PHP под Linux, проверьте наличие следующих
rpm пакетов:
libjpeg-devel
libpng-devel
libtiff-devel
gd-devel
make;make install
Перейдя в директорию apache, требуется дать команду:
./configure --prefix=/usr/local/apache --activate-module=src/modules/php4/libphp4.a
make;make install

в итоге выдается ошибка типа
stop in /111/cdrom/apache_1.3.37rusPL30.23/src/modules.
*** error code 1
stop in /111/cdrom/apache_1.3.37rusPL30.23/src.
*** error code 1
stop in /111/cdrom/apache_1.3.37rusPL30.23.
*** error code 1
stop in /111/cdrom/apache_1.3.37rusPL30.23.

пожалуйсто подскажите что это может быть - я начинающий админ и с фряхой малознаком а по работе надо настроить программы под нее
 
G

garrymax

#2
перед строками
stop in /111/cdrom/apache_1.3.37rusPL30.23.
*** error code 1

сборщик выдает строки, которые описывают причину остановки (ошибки) - их надо смотреть (код ошибки всегда 1 - не ноль). Чаще всего, при ручной сборке, проблемы следующие (по убыванию):
1. Нет требуемого пакета.
2. Нет требуемой строки конфигурации системы.
3. Не правильно указаны пути или там нет требуемых файлов

А вообще все гораздо проще: идем в /usr/ports/www/ и заходим в директорию нужного индейца (rusPL находиться в /usr/ports/russian) и пишем make&&make install&&make clean. Предварительно можно в /usr/ports/database/ MySQL требуемой версии установить, но можно и после апача. И только после этих установок в /usr/ports/lang устанавливаем php-extensions (php тоже с буковкой версии) нужной версии. В этом случае все недостающие пакеты сами закачаются с инета и установятся. Это проще, чем Microsoft Office с компакта ставить, только начиная с 6-ой версии, большинство прог, что запускаются из /usr/local/etc/rc.d/ требуют в /etc/rc.conf вставлять вроде такого apache_enable="YES" иначе ручками запускать.

Самое главное:
1. Не стараемся ставить самую новую - она не стабильна
2. Если что уже установлено, но более ранней версии, то удаляем ее pkg_delete
3. Если требуется нестандартная конфигурация, то в начале пишем make config

Есть второй вариант из простых (это если связи с инетом нет): зайти на с другого компа на один из FTP фрюхи, в директорию distfiles и от туда качнуть все необходимые пакеты - чего не хватит, то при остановки инсталляции выдаст - прийдется снова идти на FTP. Это те же самые пакеты, их только надо держать вместе при установке.
А можно положить все скаченое в директорию /usr/ports/distfiles/ и установит и директорий портов, как в предыдущем варианте - при наличии в этой директории ракетов, фрюха к инету не обратиться, а будет сразу ставить их.
 
N
#3
с пхп и апачей я почти разобрался - возникает следующая ошибка при загрузке апачи - у меня стоит 1.3.37 рус : Syntax error on line 763 of /usr/local/apache/conf/httpd.conf:
AddType requires at least two arguments, a mime type followed by one or more file extensions

строчка выглядит так:
AddType application/x-httpd-php.php
инструкции из которых она следует:
Настройка веб сервера apache осуществляется путем редактирования файла
/usr/local/apache/conf/httpd.conf в соответствии с приведенным руководством:
- Директива DocumentRoot – приведенный путь исправить на “/home/wwwdata”
(строка 283)
- Раскоментировать директиву ServerName <имя сервера> (строка 276)
- Раскоментировать или добавить директиву AddType application/x-httpd-php
.php (строка 760)
- Добавить директову AddDefaultCharset WINDOWS-1251 (строка 742)
 
G

garrymax

#4
Вопервых нужен пробел (можно много пробелов)
Код:
AddType application/x-httpd-php.php # вот так неправильно 
AddType application/x-httpd-php	.php[/b] # вот так правильно
можно туда и еще расширений через пробел добавить
Код:
AddType application/x-httpd-php	.php .phtml
Вовторых желательна еще строка AddType application/x-httpd-php-source .phps вроде этого:
Код:
AddType application/x-httpd-php				 .php
AddType application/x-httpd-php-source	 .phps
И последнее, это для модуля, а значит желательно ставить в контейнер вот так:
Код:
<IFModule mod_php5.c>
AddType application/x-httpd-php			  .php
AddType application/x-httpd-php-source	.phps
</IFModule>
а сам модуль должен загрузиться при помощи директив
Код:
LoadModule php5_module	 libexec/apache/libphp5.so
#	 и
AddModule	 mod_php5.c
проверь его наличие (самого файла libphp5.so) в директории /usr/local/libexec/apache/ Если версия 4, то в место цифры 5 везде ставь 4

Если запуск не модулем, а программой, то вместо всего этого и вне контейнеров ставишь строчки:
Код:
AddType application/x-httpd-php  .php .phtml 
Action application/x-httpd-php	  /usr/local/bin/php
то есть, указываешь путь к программе обработке, но в этом случае у тебя будет скорость меньше и отсутствие возможности вставлять директивы пхп в файл .htaccess

Дополнительно по пхп:
Файл конфигурации php.ini должен лежать в /usr/local/etc/ (примеры там же с другими расширениями). В этом файле нужно указать директорию с модулями расширений параметру extension_dir - обычно /usr/local/lib/php/номер_компоновки/ - просто сделай ls>>/usr/local/etc/php.ini и к каждому модулю спереди добавь xtension=имя_модуля и перемести все это в конец контейнера
PHP:
 (очистить от мусора, который ls выдал не забудь).
 
Статус
Закрыто для дальнейших ответов.