Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программное обеспечение Linux и FreeBSD (http://forum.oszone.net/forumdisplay.php?f=11)
-   -   Правильная установка Apache 2, PHP 5 и MySQL 5 (FreeBSD 6.2). (http://forum.oszone.net/showthread.php?t=114545)

Миронов Дмитрий 16-08-2008 14:16 876621

Правильная установка Apache 2, PHP 5 и MySQL 5 (FreeBSD 6.2).
 
Подскажите, как правельнее устанавливать Apache 2, PHP 5 и MySQL 5 на машину под управлением FreeBSD 6.2?

В Интернете нашел достаточно много способов, но не смог понять какой-же способ считается рекомендованным и наиболее удобным для последующего администрирования. Буду рад помощи, а также ссылкам на информацию на русском языке, или, хотя бы, на английском языке.

На машине установлена FreeBSD 6.2. Машина подключена в локальную сеть с DHCP (ZyXEL) и имеет свой IP-адрес в локальной сети. Структура локальной сети: машина 1 (Windows XP SP2) - DHCP (ZyXEL) - машина 2 (FreeBSD 6.2). Я хочу установить на машину (FreeBSD 6.2) Apache, PHP и MySQL и настроить все так, чтобы со второй машины (Windows XP SP2) мог открывать файлы сайта (HTML, PHP и т.д.), который находится на машине FreeBSD, через браузер. У каждой машины в сети есть свой IP-адрес, выданный DHCP. Обе машины видят друг друга в сети, т.е. пинг между ними проходит.

Теперь я хотел бы правильно установить на FreeBSD веб-сервер Apache, PHP и MySQL. Буду благодарен за любую помощь.

mar 18-08-2008 01:39 877457

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

Igor_I 03-09-2008 21:12 890350

Наверно тем, что надо выбирать из вариантов.
Apache, PHP, MySQL
PHP, Apache, MySQL
MySQL, Apache, PHP
.....
Реально, сам задумывался поначалу.

dmitryst 04-09-2008 00:25 890456

Igor_I, ставим по алфавиту :). Я делал так, но настраивать, конечно, надо в зависимости от того, что с чем связано. Например, сначала настроим РНР, затем базу данных (если вэб-сервер использует ее для авторизации), и в конце уж сам апач.
Цитата:

Цитата Миронов Дмитрий
Я хочу установить на машину (FreeBSD 6.2) Apache, PHP и MySQL и настроить все так, чтобы со второй машины (Windows XP SP2) мог открывать файлы сайта (HTML, PHP и т.д.), который находится на машине FreeBSD, через браузер. »

может, еще и FTP настроите? Очень удобно, сам пользуюсь. Ну и SSH тоже бывает нужна, особенно поначалу. Их лучше настроить в первую очередь

Wasilij 17-12-2008 21:27 983380

А подробнее про настройку и запуск MySQL

я все установил из портов(apache2 , pnp5 , mysql51-server , mysql51-client , php5-mysql , php5-extensions)

Все работает(Apache + php), кроме MySQL
Подскажите что нужно ?
Хотя бы как правильно запустить сервер MySQL (вручную и при старте системы)

Уже искал в гугле: везде по-разному и в основном для линукса

Версия FreeBSD - 6.2 (i386)

ввожу в командной строке : mysql -u root
выдает ошибку:
ERROR 2002 (HY000) Can't connect to local MySQL server through socket '/tmp/mysql.sock (2)

leonty 17-12-2008 21:59 983428

Цитата:

Цитата Wasilij
Хотя бы как правильно запустить сервер MySQL (вручную и при старте системы) »

Код:

echo 'mysql_enable="YES"' >> /etc/rc.conf
/usr/local/etc/rc.d/mysql-server.sh start


Igor_I 18-12-2008 19:54 984311

Wasilij
Обычно при установке выводится сообщение как запускать установленное приложение.
Но можно и потом посмотреть в стартовом скрипте, в данном случае в /usr/local/etc/rc.d/mysql-server (у меня без .sh)

Wasilij 18-12-2008 20:46 984355

Спасибо всем

этот вариант подошел:

echo 'mysql_enable="YES"' >> /etc/rc.conf
/usr/local/etc/rc.d/mysql-server start

Если честно то я так и не разобрался в файле
а применил те команды что мне дали
все работает
(вообще я только программист php, а настраивать сервер пришлось с нуля, потому что полетела файловая система
надо было выключить сервер с розетки а меня рядом не было , вот и выключили:)

leonty 18-12-2008 20:54 984362

Цитата:

Цитата Igor_I
Но можно и потом посмотреть в стартовом скрипте »

Код:

pkg_info -xD messagewall
а это как вариант (:

Wasilij 25-12-2008 11:32 989810

Подскажите пожалуйста в чем проблема ?
То есть что именно нужно настроить в php.ini, чтобы можно было обращаться к Мускул из ПХП
(зайти на Мускул могу с консоли)

Notice: mysql_connect() [function.mysql-connect]: SQL safe mode in effect - ignoring host/user/password information in /usr/home/my_name/www/query.php on line 9

Barracuda 25-12-2008 12:35 989842

Цитата:

Цитата Wasilij
Notice: mysql_connect() [function.mysql-connect]: SQL safe mode in effect - ignoring host/user/password information »

Надо посмотреть запрос в этой самой
Цитата:

Цитата Wasilij
/usr/home/my_name/www/query.php on line 9 »

строке файла

BuGfiX 25-12-2008 13:58 989888

Исправьте в php.ini :
Код:

[SQL]
sql.safe_mode = Off

Эта ругань из-за того что Вы храните учетные данные пользователя mysql в самом скрипте.

dmitryst 25-12-2008 14:45 989925

Цитата:

Цитата BuGfiX
Эта ругань из-за того что Вы храните учетные данные пользователя mysql в самом скрипте. »

эээ... А где ж его хранить? В отдельном конфиге?

BuGfiX 25-12-2008 15:34 989964

Цитата:

Цитата dmitryst
В отдельном конфиге? »

Ага. Как вариант, если не хотите отключать safe_mode, попробуйте установить параметры mysql.default_host, mysql.default_user, mysql.default_password, mysql.default_port в php.ini, насколько я знаю, в safe_mode используются они.

UPDATED:
К сожалению, предыдущее отверждение неверно. http://i-vd.org.ru/books/php/security.shtml#c

Tobeus 26-12-2008 10:42 990576

У меня вот проблема с установкой Apache22 под FreeBSD 7.
Установил с портов.
При запуске:
Код:

Performing sanity check on apache22 configuration:
Syntax OK
Starting apache22.

Но он не запускается. При остановке скрипт выдает:
Код:

apache22 not running? (check /var/run/httpd.pid).
Через telnet localhost 80 тоже не подключается.

Во фре я новичок, подскажите куда копать, где смотреть? Если бы хоть ошибки какие при старте выдавал...

dmitryst 26-12-2008 12:43 990671

Цитата:

Цитата Tobeus
он не запускается »

ну так и смотрите в /var/log на предмет наличия файлов apache или httpd (не помню, давно не пользовался :) )

Wasilij 26-12-2008 14:14 990766

Цитата:

Цитата Tobeus
У меня вот проблема с установкой Apache22 под FreeBSD 7. »

Поставь Apache2.0 у меня тоже раньше были проблемы с версией апаче22
поменял на апаче20 и никаких проблем
и самое главное прописать запуск апаче в рк.конф

Насчет моей проблемы
Цитата:

Цитата Barracuda
Надо посмотреть запрос в этой самой »

код 100% рабочий уже почти год (просто переустановка ФРЕЕ на новый винчестер)

Сейчас я запускаю сайты в тестовом режиме, поэтому имена пользователей Фрее и мускула различаются:
Имя пользователя, использованное при подключении к серверу MySQL, должно совпадать с именем владельца файла, вызывающего mysql_connect( ).

опасно ли выключать безопасный режим (safe_mode) ???

dmitryst 26-12-2008 16:08 990886

Цитата:

Цитата Wasilij
опасно ли выключать безопасный режим »

нет, если
Цитата:

Цитата Wasilij
Сейчас я запускаю сайты в тестовом режиме »

Потом, наверное, надо будет включить обратно (хотя я лично особых преимуществ не вижу)

Wasilij 26-12-2008 17:09 990931

Насчет тестового режима то я неправильно выразился

сайт нормально видно з интернета
просто на время экспериментов я вкл. /выкл. вывод ошибок на экран
И пока тестирую сайт на другом домене и с другим юзером(другой каталог)
работает сайт на файлах - старая версия
чтобы пользователи хотя бы видели сайт наполненный инфой

Сейчас стоит задача залить инфу в базу а после этого просто переключусь на основной домен

Wasilij 29-12-2008 21:46 993332

А все таки в чем разница между:
[SQL]
sql.safe_mode = ON/Off

в файле php.ini

Igor_I 30-12-2008 15:54 993792

Цитата:

При включении параметра sql .safe_mode игнорируется вся информация, передаваемая функциям mysql_connect( ) и mysql_pconnect( ), а подключения разрешаются только для UID, под которым работает web-сервер.
Только не вэб-сервер, а php.
Получить имя пользователя, под которым исполняется php
echo 'Current script owner: ' . get_current_user();
Заводим этого пользователя в базе, даём ему самые минимальные привилегии на нужную базу данных.
И про mysql_connect( ) и mysql_pconnect( ) можно забыть.
А если еще в запросе писать нужную базу, то и про mysql_select_db() тоже можно забыть.

Tobeus, смотреть надо в логи, название - какое поставил, у меня - httpd-access.log & httpd-error.log

Her mes 27-05-2009 10:09 1128531

Доброго времени суток господа.

В *никсах 3й день, поэтому если не сложно, не пинайте сильно. Доками не рождаются, а становятся. Заранее прошу прощения если не достаточно кратко или информативно.

Поставил FreeBSD 7.2 /amd64/ - работает (step by step осваиваю), запустил ftp - для удобства, поставил apache22 - работает в-хостинг (освоил пока pkg_add blah-blah, ос девственна - ни одного лишнего пакета). Аналогичным способом поставил пакет php5-5.2.9.tbz, перечитал на 2х языках пресс прессы, но добиться работы не удается. Везде написано что в httpd.conf необходимо прописать:

LoadModule php5_module libexec/apache/libphp5.so

AddModule mod_php5.c
<IfModule mod_php5.c>
DirectoryIndex index.php index.html
</IfModule>
<IfModule mod_php5.c>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
</IfModule>

но в пакете php нет файла libphp5.so, соответственно на машине тоже нет. Что я делаю неправильно? Как это делается правильно?

WhitePangolin 01-06-2009 08:46 1132041

Чтобы привязать php к апачу как модуль, нужно сначала установить его как модуль :)
Уберите php и поставьте mod_php
И вообще
Цитата:

Цитата Her mes
освоил пока pkg_add »

не есть гуд. Для BSD сначала надо было освоить make ;)

Her mes 06-06-2009 14:24 1136660

Ага, ага, ага! Cпасибо за ответ. маке тоже освоил, но не помогает. Все равно не могу от пхп получить догружаемый модуль. МБ, подробно как сделать напишите, если не трудно разумеется?

updt: Нашел таки этот файлик :) подправил Makefile перекомпилировал и все заработало.

Тогда другой вопрос: SSL: одна машина - только один сертификат или апач может скушать отдельный для каждого виртуального хоста?


Время: 19:02.

Время: 19:02.
© OSzone.net 2001-