Установка Ubuntu, Nginx, PHP, MySQL на Hetzner хостинг

Компьютеры, личный транспорт, гаджеты, стиль, отношения

Установка Ubuntu, Nginx, PHP, MySQL на Hetzner хостинг

Повідомлення Mr.X » 29 жовт 2012, 21:50

Никогда не думал, что когда нибудь получу по почте письмо типа "Хер Mr.X, аусвайс! шнеля! шнеля!" И что в ответ пойду сканить своё водительское удостоверение и пластик, чтобы заказать у фашистов хостинг.

Да, я планирую продаться фрицам. Почему бы и нет. Дешевле, вроде как надёжнее, и очень просто. Расскажу свои шаги по инсталяции сервера на виртуальный хостинг Hetzner.de

1. Идём на http://ru.hetzner.de (да, у них есть русский интерфейс, но они его очень стесняются), читаем условия

2. Выбираем самый дешёвый "vServer VQ 7" по 79 грн. в месяц на странице https://robot.your-server.de/order

3. Выбираем "Ubuntu 12.10 minimal", English, 32 bit, 1 server, жмём на "Add to shopping cart"

Untitled-1.jpg [ 73.37 КБ | Переглядів: 7864 ]


4. Регистрируемся, указываем пластик

5. Приходит письмо с просьбой прислать скан первой страницы паспорта и лицевой стороны пластика

6. Отсылаем сканы, на следующий день приходит логин-пароль к админке, и логин пароль к SSH
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54



Переустановка Linux на хостинге Hetzner

Повідомлення Mr.X » 29 жовт 2012, 22:04

Если мы напортачили с инсталляцией, можно откатиться к первоначальному состоянию Ubuntu системы из админки. Для этого.

1. Заходим в админку https://robot.your-server.de

2. Выбираем "Main functions" -> "Servers" -> Номер сервера -> Linux -> настройки как при инсталляции, указываем переустановить

hetzner.jpg [ 152.93 КБ | Переглядів: 7855 ]


3. Соглашаемся, что будут удалены все данные на хостинге

4. Ждём новыго пароля доступа по SSH, система будет такая же, как при покупке хостинга
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54



Установка Nginx, PHP, MySQL

Повідомлення Mr.X » 29 жовт 2012, 22:11

Добавляем ропозиторий Nginx
Код: Виділити все
nano /etc/apt/sources.list

В конце добавляем
Код: Виділити все
deb http://nginx.org/packages/ubuntu/ precise nginx
deb-src http://nginx.org/packages/ubuntu/ precise nginx

Сохранить: Ctrl+O, Выйти: Ctrl+X

Ставим GPG ключ.

Скачаем
Код: Виділити все
wget http://nginx.org/keys/nginx_signing.key

Установим ключ
Код: Виділити все
apt-key add nginx_signing.key


Обновляем список пакетов
Код: Виділити все
apt-get update

Ставим Nginx
Код: Виділити все
apt-get install nginx


Ставим PHP
Код: Виділити все
apt-get install php5-cli php5-common php5-mysql php5-suhosin php5-gd php5-fpm php5-cgi php5-fpm php-pear php5-mcrypt -y

В файле
Код: Виділити все
nano /etc/php5/fpm/php.ini

исправляем
Код: Виділити все
;cgi.fix_pathinfo = 1

на
Код: Виділити все
cgi.fix_pathinfo = 0

В редакторе Nano - Сохранить: Ctrl+O, Выйти: Ctrl+X

Перезапускаем PHP
Код: Виділити все
/etc/init.d/php5-fpm restart


Создаём пользователя, группу, его папки, назначаем права
Код: Виділити все
useradd siteuser -b /home/ -m -U -s /bin/false
passwd siteuser
mkdir -p -m 755 /home/siteuser/www
mkdir -p -m 754 /home/siteuser/logs
chown -R siteuser: /home/siteuser/www/
chown -R siteuser: /home/siteuser/logs/
# Добавим пользователя siteuser в веб-группу www-data
usermod -a -G siteuser www-data


Если надо разобраться что к чему можно ещё глянуть тут http://howitmake.ru/blog/ubuntu/80.html. Или тут http://daily-notes.ru/2011/10/vds_hetzn ... ing_begin/ - но там устаревшая инструкция, у Вас проинсталлить рабочую систему по ней на Hetzner без полного понимания что вы делаете не получится.

Только в настройках файла
Код: Виділити все
nano /etc/nginx/conf.d/example.org.conf

вместо
Код: Виділити все
fastcgi_pass   127.0.0.1:9000;

написать
Код: Виділити все
fastcgi_pass unix:/var/run/php5-fpm.sock;

иначе будет выдавать 502 ошибку
Востаннє редагувалось Mr.X 27 квіт 2013, 21:34, редаговано 4 раз(а).
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54



Установка FTP сервера vsFTPd

Повідомлення Mr.X » 29 жовт 2012, 22:23

Для работы с FTP ставим vsFTPd
Код: Виділити все
aptitude install vsftpd


В файле
Код: Виділити все
nano /etc/vsftpd.conf

смотрим чтобы было
Код: Виділити все
write_enable=YES
...
ascii_upload_enable=YES
ascii_download_enable=YES
...
chroot_local_user=YES
...
local_enable=YES
...
anonymous_enable=NO
...
local_umask=077


В конец файла дописываем
Код: Виділити все
pasv_min_port=50000
pasv_max_port=60000


В файле
Код: Виділити все
nano /etc/pam.d/vsftpd

закомментируем строчку
Код: Виділити все
#auth   required        pam_shells.so


Перезапустим vsFTPd
Код: Виділити все
/etc/init.d/vsftpd restart


Hetznet ставит vsFTPd версии 2.3.5, это значит что у Вас будет выдавать ошибку при попытке входа по FTP
Код: Виділити все
500 OOPS: vsftpd: refusing to run with writable root inside chroot ()

Лечится ка написано у Дмитрия на http://www.benscobie.com/fixing-500-oop ... mment-2051

Дописываем в конец файла
Код: Виділити все
nano /etc/vsftpd.conf

строчку
Код: Виділити все
passwd_chroot_enable=yes


И в файле
Код: Виділити все
nano /etc/passwd

В строке с именем юзера который будет логиниться по FTP ставим точку между home и userdirectory
Код: Виділити все
/home/user

на
Код: Виділити все
/home/./user


Перегружаем сервер
Код: Виділити все
reboot
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54



Добавить php include_path в nginx

Повідомлення Mr.X » 09 лист 2012, 21:52

В nano /etc/nginx/conf.d/site.com.conf вписать
Код: Виділити все
fastcgi_param  PHP_VALUE  "include_path=/my/include/path";


Или прямо в конфиге nano /etc/php5/fpm/php.ini исправить на
Код: Виділити все
include_path = ".:/my/include/path:/my/include/path2:/my/include/path3"
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54



Выставить права на все файлы в папке

Повідомлення Mr.X » 10 лист 2012, 13:23

Как выставить рекрусивно права на все файлы и папки в директории?

На файлы
# find /path/to/directory -type f -exec chmod 755 {} \;

На директории
# find /path/to/directory -type d -exec chmod 755 {} \;
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54



Настройка Zend Framework на Nginx

Повідомлення Mr.X » 10 лист 2012, 18:05

Как выяснилось самый корректный конфиг Nginx для Zend Framework, указан в документации на Nginx.

Должен выглядеть примерно так:
nano /etc/nginx/conf.d/site.com.conf

Код: Виділити все
server {
      listen 80;
      server_name www.example.com;
      root /var/www/www.example.com/myapplication;
      index  index.html index.htm index.php;

      location / {
        # или строчку ниже, или то, что под ней
        # try_files $uri $uri/ /index.php;
        if (!-e $request_filename) {
            rewrite ^.*$ /index.php last;
        }
      }

      location ~ \.php$ {
        fastcgi_pass      unix:/usr/local/zend/tmp/php-fastcgi.socket;
        fastcgi_index    index.php;
        fastcgi_param   SCRIPT_FILENAME /var/www/www.example.com/myapplication$fastcgi_script_name;
        include               fastcgi_params;
      }
    }
Востаннє редагувалось Mr.X 13 лист 2012, 18:42, редаговано 1 раз.
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54



Установка Sendmail на Ububtu 12 + NGINX

Повідомлення Mr.X » 11 лист 2012, 00:11

Ставим
apt-get install sendmail
apt-get install mailutils

Заходим nano /etc/hosts , смотрим, чтобы под 127.0.0.1 localhost была строчка
199.246.14.14 troololo.com # изменить IP и URL на свои

Заходим nano /etc/hostname , смотрим, чтобы там было только
trololo.com #изменить на свой URL

В nano /etc/php5/fpm/php.ini раскомментируем строку ;sendmail_path = /usr/sbin/sendmail , чтобы было
sendmail_path = /usr/sbin/sendmail -t -i

поправим sendmail_from на
sendmail_from = robot@trololo.com

и установим временную зону
date.timezone = "Europe/Kiev"

В nano /etc/mail/sendmail.mc

после MAILER_DEFINITION вписать строку
define(`SMART_HOST`, 'trololo.com')dnl # заменить сайт на свой

Поправить на
MASQUERADE_AS(`trololo.com`)dnl

В самом конце файла вписать
define(`MAIL_HUB', `trololo.com.')dnl
define(`LOCAL_RELAY', `trololo.com.')dnl

Конфигурируем, перезагружаемся
sendmailconfig
service sendmail restart
reboot

Проверим работает ли
php -r "mail('ololo@gmail.com', 'Test Message', 'Test Text body');"
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54



301 редирект в NGINX

Повідомлення Mr.X » 13 лист 2012, 00:10

server {
listen 80;
server_name www.site.com;
rewrite ^ $scheme://site.com$request_uri permanent;
}

server {
listen 80;
server_name site.com;
............
}
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54



Повідомлення maks610 » 24 лист 2012, 23:00

А Я хочу порекомендовать вот такой проект - БЕСПЛАТНЫЕ ШАБЛОНЫ JOOMLA http://template-joomla.ru/ там можно выбрать любой шаблон для своего сайта, море вариантов, молодцы ребята, что создают такие нужные проекты и главное - бесплатно... РЕСПЕКТ И УВАЖУХА!!!
maks610
 
Повідомлення: 51
Зареєстрований: 29 лист 2011, 01:27



Повідомлення Mr.X » 06 груд 2012, 21:37

Установка на Ubuntu Nginx Git - управление версиями для Hetzner хостинга
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54



Повідомлення icecream » 04 січ 2013, 01:33

Не знаете, можно ли у них отключать root запись? Просто по умолчанию она включена, что не есть хорошо. На ряде хостингов это приводит к невозможности ребута сервака через админку. А вот про Hetzner ничего не могу нагуглить... :(
icecream
 
Повідомлення: 1
Зареєстрований: 04 січ 2013, 01:26



Ставим phpMyAdmin

Повідомлення Mr.X » 08 січ 2013, 23:39

Код: Виділити все
apt-get install phpmyadmin


Указываем MySQL пароль root, придумываем MySQL пароль phpmyadmin, не ставим галочи напротив предлагаемых веб-серверов. Конфиг Nginx будет выглядеть примерно так
Код: Виділити все
server {
        listen   80;
        root /home/example/www;

        access_log  /home/example/logs/nginx.access.log; #расположение логов данного хоста

        server_name mail.example.org;

        location / {
                index index.php index.html index.htm;
        }

        location ~ \.php$ {
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include        fastcgi_params;
        }
       #Работа с phpMyAdmin
         location /phpmyadmin {
               root /usr/share/;
               index index.php index.html index.htm;
               location ~ ^/phpmyadmin/(.+\.php)$ {
                       try_files $uri =404;
                       root /usr/share/;
                       fastcgi_pass 127.0.0.1:9000;
                       fastcgi_index index.php;
                       fastcgi_param SCRIPT_FILENAME $request_filename;
                       include /etc/nginx/fastcgi_params;
               }
               location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
                       root /usr/share/;
               }
        }
        location /phpMyAdmin {
               rewrite ^/* /phpmyadmin last;
        }

}

Перезагружаемся
Код: Виділити все
/etc/init.d/nginx restart


если выдаёт 500 ошибку или другую, меняем

Код: Виділити все
fastcgi_pass   127.0.0.1:9000;

на
Код: Виділити все
fastcgi_pass unix:/var/run/php5-fpm.sock;


Подробности тут: http://howitmake.ru/blog/ubuntu/93.html
Пароль криптуем утилитой http://aspirine.org/htpasswd_en.html
Востаннє редагувалось Mr.X 28 квіт 2013, 13:40, редаговано 1 раз.
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54



Повідомлення Mr.X » 09 січ 2013, 00:04

Установка ситемы управления проектами Redmine на NGINX
Установка Candycane - php-клона Redmine
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54



Повідомлення sarrafa » 20 січ 2013, 16:58

Полезная инфа
sarrafa
 
Повідомлення: 3
Зареєстрований: 20 січ 2013, 16:49
Звідки: Самара



Повідомлення Mr.X » 12 трав 2013, 15:35

Как поднять сервер предоставления хостинг-услуг на Ubuntu
http://www.mini-server.ru/server/web/12 ... ig-3-nginx

Там же есть, как поднять игровой CS сервер, файловый сервер, сервер доступа.
Слава Україні!
Аватара користувача
Mr.X
 
Повідомлення: 631
Зареєстрований: 26 лист 2009, 11:54






Повернутися в Мужской форум

Хто зараз на конференції

Зараз цей форум переглядають: немає зареєстрованих користувачів і гості: 2


анализ воды, грунта, воздуха прапори, стрічки