Всем доброго времени суток и я делюсь со всеми информацией как поднять сервак на CentOS 6 с нуля на совершенно голой системе, это, пожалуй, самая подробная инструкция в рунете. Итак поехали! Если вы не подключились по SSH тогда может и не стоит начинать)) Первым делом добавляем пользователя (понятно что писать <> не нужно):
adduser <user>
Задаем свежедобавленному пользователю пароль:
passwd <user>
Создаем дерикторию для сайта от имени пользователя:
sudo -u <user>mkdir /home/<user-dir>/www
Устанавливаем sudo если его нет, вот у меня не было, у меня был сооовсем пустой сервак:
yum install sudo
Назначаем права на папку:
chmod 755 /home/<user-dir> -R
Правим конфиг через vi (но мне этот редактор не понравился, потому я правил через filezilla), если такая роскошь как apache установлен, если нет читаем ниже как ставить:
vi /etc/httpd/conf/httpd.conf
В конец конфига дописываем:
<VirtualHost *:80>
ServerAdmin food-corp@yandex.ru
DocumentRoot /home/adming/www/
ServerName site.com
ServerAlias www.site.com
</VirtualHost>
Перезапускаем apache:
service httpd restart
Если apache отсутствует на вашем сервере - не отчаиваемся, скидываем таблицы:
service iptables stop && chkconfig iptables off
Ставим apache:
yum -y install httpd mod_ssl
Добавляем его в автозагрузку:
chkconfig httpd on
Далее решаем проблемы по мере их поступления, например ставим PHP, первым делом подключаем репозитории:
wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
rpm -Uvh epel-release-6-8.noarch.rpm remi-release-6.rpm
Подкючили репозитории, потом ставим yum-utils:
yum install yum-utils
Далее выдираем одну из версий PHP (можно и другие посвежее поставить, но очень нужно было старье):
yum-config-manager --enable remi-php54 [Intall PHP 5.4]
yum-config-manager --enable remi-php55 [Intall PHP 5.5]
yum-config-manager --enable remi-php56 [Intall PHP 5.6]
И запускаем установку PHP:
yum install php php-mcrypt php-cli php-gd php-curl php-mysql php-ldap php-zip php-fileinfo
УРА, наконец-то переходим к созданию базы данных:
mysqladmin -uroot -p create my_base
Заходим в консоль mysql:
mysql -u root -p
Создание пользователя и выделение ему прав на созданную базу.
GRANT ALL PRIVILEGES ON <my-base>.* TO '<user-base>'@'localhost' IDENTIFIED BY '<pas>';
Сбрасываем старые привилегии из памяти и выходим из консоли:
flush privileges;
quit;
Если нет такого программного обеспечения, как MySQL, то расстраиваемся и ставим:
yum -y install mysql-server
Запускаем mysql:
/etc/init.d/mysqld start
Не забываем ставить в автозагрузку:
chkconfig mysqld on
По желанию можно удалить лишнее:
mysql_secure_installation
Пробуем подключится:
mysql -u root -p
Если просит пароль, а его нет, то создадим новый:
mysqladmin -u root password <pass>
Если нет phpmyadmin, вздыхаем и продолжаем ставить:
sudo yum install phpmyadmin
И конфигурируем. По умолчанию доступ к Web-интерфейс управления базами данных осуществляется только локально на том компьютере где развернуто это ПО, т.е. phpMyadmin, чтобы разрешить обращение по адресу http://Host{IP-addreess}/phpmyadmin с конкретного IP адреса или подсети, следует заменить значение 127.0.0.1 у следующих директив в этом файле:
nano /etc/httpd/conf.d/phpMyAdmin.conf
Устанавливаем FTP-сервер если его нет:
yum -y install vsftpd
Добавляем пользователя каталога:
useradd -s /home/<user-dir>/ <user>
Запускаем так:
/etc/init.d/vsftpd start
Добавляем vsftpd в автозагрузку:
chkconfig vsftpd on
При подключении через FTP не увидим файл .htaccess и вообще файлы начинающиеся с точки, решаем проблему:
vim /etc/vsftpd.conf
Вставляем в конец файла следующую строку:
force_dot_files=YES
Перезапусткаем FTP (vsftpd):
/etc/init.d/vsftpd restart
Вылезли проблемы c ЧПУ оно не заработало)) задолбался искать, но решение есть. Вначале открываем конфиг:
/etc/HTTPD/CONF/httpd.conf
Проверяем что строка Rewrite_module LoadModule модули/mod_rewrite.so не закомментирована, если нет то все "AllowOverride None" меняем на "AllowOverride All" и все работает!
А вообще вагон нормальных расширений для PHP:
yum --enablerepo=remi install php php-bcmath php-cli php-common php-dba php-devel php-embedded php-enchant php-gd php-imap php-intl php-ldap php-mbstring
yum --enablerepo=remi install php-mcrypt php-mysql php-odbc php-pdo php-pear.noarch php-pecl-geoip php-pecl-igbinary php-pecl-memcache php-pecl-memcached php-pgsql
yum --enablerepo=remi install php-process php-pspell php-recode php-snmp php-soap php-tidy php-xml php-xmlrpc
Как узнать версию PHP из командной строки?
php -v
Как узнать версию MySQL из командной строки?
rpm -qa | grep mysql
или
rpm -qi mysql
Как узнать версию Nginx из командной строки?
nginx -v
Как узнать версию Apache из командной строки?
httpd -v
Как узнать версию/релиз CentOS из командной строки?
rpm -q centos-release
или
uname -a