- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Вот решил попробовать ОС NetBSD, установил, настроил. Захотелось поднять связку Apache22+Mysql+PHP5. Информации по этой теме маловато, пришлось набросать заметки, а может кому еще сгодится 
1. Установить из системы пакетов: www/apache22, databases/mysql-server, lang/php5, www/ap-php, databases/php-mysql. Я устанавливаю всё без дополнительной конфигурации (./configure --параметры...)
После установки необходимо скопировать стартовые скрипты apache и mysql
# cp /usr/pkg/share/examples/rc.d/apache /etc/rc.d/apache
# cp /usr/pkg/share/examples/rc.d/mysqld /etc/rc.d/mysqld
2. Настроим mysqld.
2.1. cp /usr/pkg/share/examples/rc.d/msqld /etc/rc.d
2.2. Добавить в /etc/rc.conf: mysqld=YES.
Перезагружаться не обязательно, достаточно выполнить #/etc/rc.d/mysqld start
2.3. Минимально настроить безопасность mysql:
#mysql
> use mysql;
> delete from user where user='';
> grant all on * to root identified by 'новыйпароль';
> grant all on * to root@localhost identified by 'новыйпароль';
> grant all on * to root@127.0.0.1 identified by 'новыйпароль';
> flush privileges;
Совет. Если нужно создать таблицы и базы в нужных кодировках и представлениях нужно:
- Посмотреть доступные кодировки и представления
> show character set;
Созание базы данных (пример)
> create database AAA default character set cp1251 collate cp1251_general_ci; (так я перетаскивал joomla'у)
Создание таблиц
> create table TTT (str varchar(20)) default character set cp1251 collate cp1251_general_ci;
Замечу также, что для переноса joomla'ы мне даже не понадобилось создавать my.cnf, mysqld грузится по-умолчанию.
3. Дл настройки интерфейса php для mysql в конфиге php (/usr/pkg/etc/php.ini) дописать одно расширение:
extension=mysql.so
Если при запуске были ошибки:
httpd: apr_sockaddr_info_get() failed for server.my.domain.name
httpd: Could not reliably determine the server's fully qualified name, using 127.0.0.1 for ServerName
a) проверить hostname:
# hostname
server.my.domain.name
b) прописать hostname в /etc/hosts:
192.168.0.111 server.my.domain.name
4.1. Настроим apache для работы с php в паре. Правим конфг /usr/pkg/etc/httpd/httpd.conf
В конец конфига добавляем:
LoadModule php5_module /usr/pkg/lib/httpd/mod_php5.so
AddHandler application/x-httpd-php .php
Найти раздел < IfModule dir_module> и отредактировать содержимое так (пробелы убрать после <):
< IfModule dir_module>
DirectoryIndex index.php index.html
< /IfModule>
Поменять корень вэб-документов на что-нибудь покороче, параметр DocumentRoot, например,
DocumentRoot "/var/www"
Если используются виртуальные хосты, расскоменировать строку
Include etc/httpd/httpd-vhosts.conf оные прописывать в нём.
4.2. Переапустить apache
# /etc/rc.d/apache restart
4.3. Проверим работу
# vi /var/www/phpinfo.php
забить в него (пробелы убрать после <):
< ?php
phpinfo();
?>
И в браузере ввести: адрес хоста/phpinfo.php - должна выдаться конфигурация апача, пхп. Файл phpinfo.php удалить, чтоб не смущать хацкеров.
P.S. Если при попытке зайти на страницу ловим "You don't have permission to access / on this server.", скорее всего изменён DocumentRoot и для этого каталога не прописана секция Directory, например так (пробелы убрать после <):
< Directory "/var/www">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
< /Directory>
P.S. У меня apache по нормальному запускается:
просто добавить rc.conf apache=YES
а с локали так...
/etc/rc.d/apache start
Да и корень менять не обязательно вовсе 


