14 февр. 2012 г.

Установка сервера Lighttpd + MySQL + PHP

Установлено по инструкции http://itbuben.org/blog/Unix-way/1213.html

1. Вначале удостоверимся, что файрволл включен:

iwi@w12:~$ sudo ufw status
Статус: активно

Если он отключен, то для включения используется:

iwi@w12:~$ sudo ufw enable
Межсетевой экран будет запущен при запуске системы

2. Установка MySQL

sudo apt-get install mysql-server mysql-client


При запросе пароля root , вводим пароль. Затем идет настройка пакетов.
Для проверки можно выполнить:

netstat -anltp | grep "LISTEN"

Среди портов должен присутствовать:


tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      5222/mysqld   

 3. Установка Lighttpd

sudo apt-get install lighttpd

Заходим на http://localhost и проверяем что сервер заработал.


4.  Ставим php5 с кучей модулей:

sudo apt-get install php5-cgi php5-dev php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ps php5-pspell php5-recode php5-snmp php5-tidy php5-xmlrpc php5-xsl php5-common php5-mysql

Теперь нужно раскомментировать значение в файле /etc/php5/cgi/php.ini чтобы php корректно работал в режиме cgi.
cgi.fix_pathinfo=1
Выполняем:
sudo gedit /etc/php5/cgi/php.ini
ищем
;cgi.fix_pathinfo=1 и убираем ";"


Чтобы включить FastCGI, выполним следующие команды:



sudo lighttpd-enable-mod fastcgi
и сервер сам подскажет нам какие модули ещё доступны:
Available modules: auth cgi fastcgi proxy rrdtool simple-vhost ssi ssl status userdir 
Already enabled modules: 
Enabling fastcgi: ok
Run /etc/init.d/lighttpd force-reload to enable changes

После включения или правки чего-либо перезагружаем сервер

sudo /etc/init.d/lighttpd force-reload
ответ:
Syntax OK
 * Reloading web server configuration lighttpd  



5. Тест PHP5


Создаем файл info.php


gedit /var/www/info.php


В котором надо написать и сохранить следующее:


<?php
phpinfo();
?>





Смотрим по адресу http://localhost/info.php в браузере:



6.  Можно установить еще и другие доступные модули:



sudo apt-cache search php5


Получаем список возможного для установки:


cakephp - MVC rapid application development framework for PHP
dwoo - PHP5 template engine
jffnms - web-based Network Management System (NMS) for IP networks
libgv-php5 - Php5 bindings for graphviz
coding standards
php-imlib - PHP Imlib2 Extension
php5-adodb - Extension optimising the ADOdb database abstraction library
php5-auth-pam - A PHP5 extension for PAM authentication
php5-exactimage - fast image manipulation programs (PHP bindings)
php5-ffmpeg - audio and video support via ffmpeg for php5
php5-geoip - GeoIP module for php5
php5-gpib - libgpib PHP5 bindings
php5-idn - PHP API for the IDNA library
php5-imagick - ImageMagick module for php5
php5-imap - IMAP module for php5
php5-interbase - interbase/firebird module for php5
php5-lasso - Library for Liberty Alliance and SAML protocols - PHP 5 bindings
php5-librdf - PHP5 language bindings for the Redland RDF library
php5-mcrypt - MCrypt module for php5
php5-memcache - memcache extension module for PHP5
php5-memcached - memcached extension module for PHP5
php5-ming - Ming module for php5
php5-ps - ps module for PHP 5
php5-radius - PECL radius module for PHP 5
php5-remctl - PECL module for Kerberos-authenticated command execution
php5-sasl - Cyrus SASL extension for PHP 5
php5-sqlrelay - SQL Relay PHP API
php5-suhosin - advanced protection module for php5
php5-svn - PHP Bindings for the Subversion Revision control system
php5-symfony1.0 - Open-Source PHP Web Framework
php5-uuid - OSSP uuid module for php5
php5-xapian - Xapian search engine interface for PHP5
php5-xcache - Fast, stable PHP opcode cacher
php5-xdebug - Xdebug Module for PHP 5
phpunit - Unit testing suite for PHP5
weborf - Fast and small webserver meant to be run without root privileges
libapache2-mod-php5 - server-side, HTML-embedded scripting language (Apache 2 module)
php-pear - PEAR - PHP Extension and Application Repository
php5 - server-side, HTML-embedded scripting language (metapackage)
php5-cgi - server-side, HTML-embedded scripting language (CGI binary)
php5-cli - command-line interpreter for the php5 scripting language
php5-common - Common files for packages built from the php5 source
php5-curl - CURL module for php5
php5-dbg - Debug symbols for PHP5
php5-dev - Files for PHP5 module development
php5-gd - GD module for php5
php5-gmp - GMP module for php5
php5-ldap - LDAP module for php5
php5-mysql - MySQL module for php5
php5-odbc - ODBC module for php5
php5-pgsql - PostgreSQL module for php5
php5-pspell - pspell module for php5
php5-recode - recode module for php5
php5-snmp - SNMP module for php5
php5-sqlite - SQLite module for php5
php5-sybase - Sybase / MS SQL Server module for php5
php5-tidy - tidy module for php5
php5-xmlrpc - XML-RPC module for php5
php5-xsl - XSL module for php5
libapache2-mod-php5filter - server-side, HTML-embedded scripting language (apache 2 filter module)
php5-enchant - Enchant module for php5
php5-intl - internationalisation module for php5
php5-mapscript - php5-cgi module for MapServer

Устанавливаем что нужно и снова перезагружаем сервер.