Как разместить сайт в ISPmanager | REG.RU

Как разместить сайт в ISPmanager
 |
 REG.RU Хостинг

Боевая задача.

Предположим нам хочется захостить небольшой проектик где-нибудь в надежном и не особо тормозящем месте. А поскольку сайт небольшой, то не будем заморачиваться и захотим от хостинга что-нибудь самое простое. Для наших целей вполне хватит PHP, MySQL и доступа по FTP.

Для решения этой задачи идеально подходит

Веб сервис от Амазона

в котором удивительным образом сочетается способность выдерживать большие нагрузки с бесплатным пакетом ресурсов

на первый год после регистрации

. В

бесплатный пакет

входит много чего, но в данный момент нас будут интересовать:


Причем все это при желании можно зарегистрировать и подготовить к работе за полчаса, но понадобится кредитная карта, которую примет Amazon (и снимет 2 доллара) и сотовый телефон под рукой (домашний не подойдет).

Как загрузить сайт на хостинг

Недавно меня попросили рассказать, как загружается сайт на хостинг. Я-то думал, что у меня уже есть такая статья, а оказалось, что всё-таки эту статью я случайно пропустил, поэтому пишу её сейчас.

Что касается хостинга, то рекомендую вот этот: отзыв о Hostia.

После оплаты к Вам на почту придёт письмо, в котором, помимо прочих, будут данные для подключения по FTP и к панели управления.

В первую очередь, заходите в панель управления хостингом, создавайте базу данных в этой панели. Затем оттуда же переходите в phpmyadmin и импортируйте всю базу данных Вашего сайта на хостинг в созданную базу данных.

Для подключения по FTP я рекомендую вот эту программу: Filezilla — в этой же статье написано, как подключаться к хостингу по FTP.

Теперь Вам нужно загрузить все файлы Вашего сайта в папку www (или public_html). Не забудьте сделать настройки конфигурационного файла (если таковой имеется, конечно).

И краткое резюме:

  1. Купите хостинг.
  2. Зайдите в панель управления хостингом.
  3. Создайте в ней новую базу данных (и, возможно, пользователя).
  4. Через phpMyAdmin импортируйте базу данных на хостинг.
  5. Подключитесь к хостингу по FTP.
  6. Загрузите все файлы сайта в папку www (или public_html) на хостинге.
  7. Возможно, перед загрузкой потребуется настройка конфигурационного файла.

Разумеется, если у Вашего сайта нет базы данных, то можно все шаги, связанные с ней, пропустить. Для тех же, кому удобнее видеоинформация, то в этом курсе всё это показано на примере реального сайта. Вот и всё, загрузка сайта на хостинг завершена.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://shhost.ru)!

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

Как импортировать базу данных в ispmanager

Если ваш сайт хранит данные в базе данных (например, данные для авторизации пользователей), то для него необходимо создать базу данных и импортировать содержимое при наличии дампа. Если у вас сайт-визитка или посадочная страница, база данных не требуется.

Мы рассмотрели, как выложить сайт на хостинг.

Готово! Вы загрузили ваш сайт в ISPmanager. Если ваш домен был уже привязан к услуге хостинга, то сайт будет доступен в сети Интернет.

Если вы только зарегистрировали домен или ранее изменяли DNS-серверы, ваш сайт будет доступен через 24 часа. В этом случае можно проверить доступность сайта до обновления DNS-серверов.

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

Как разместить файлы сайта в ispmanager

Ниже описана загрузка сайта на хостинг в хостинг-панели ISPmanager.

Обратите внимание! Если внешний вид вашей панели управления отличается от представленного в инструкции, кликните в левом нижнем углу «Попробовать новый интерфейс».

  1. 1.
  2. 2.
  3. 3.
  4. 4.
  5. 5.
  6. 6.

    Убедитесь, что файлы сайта были извлечены непосредственно в каталог сайта, а не во вложенную директорию.

  7. 7.
    При необходимости переместите файлы сайта в корневой каталог, для этого выделите все файлы и воспользуйтесь кнопками Вырезать и Вставить.

Немного информации

Сайты бывают двух типов: статичные и динамические. Статичные сайты — это просто набор html/css/js документов, которые представляют из себя обычные текстовые файлы. Перенос такого типа сайтов не представляет никакой сложности: достаточно просто скопировать файлы на сервер.

Второй тип сайтов — динамические. Динамический сайт гибок и расширяем. Это своего рода программа, которая выполняется на сервере и реагирует на действия посетителя. Такая программа называется CMS или Системой управления контентом (от англ.

Content Management System). Большинство CMS написаны на специальном языке программирования — PHP и хранят информацию (контент страницы, настройки системы, пользователей и т.д.), в базе данных (далее по тексту БД). Вот примеры самых популярных CMS:

WordPress, Joomla, Data Life Engine, Drupal. Если Вы создавали сайт с использованием CMS, то сейчас обязательно узнали одно из названий. Перенос сайтов, созданных при помощи CMS, требует дополнительных действий: необходимо перенести файлы CMS (исполняемые скрипты, шаблоны и остальные файлы), перенести БД и настроить CMS для работы на хостинге.

Пошаговая настройка apache с выбором версий php nginx как reverse proxy (с mod_pagespeed) на ubuntu 16.04

В интернете кучу статей по настройке сервера, настройки Apache, Nginx и т.п. В данной статье будет пошагово настроен простой shared хостинг. Все операции производятся через консоль.

В посте будут решены и описаны следующий задачи:

1. Установка Apache PHP
2. Возможность выбора версий PHP
3. Возможность работы сайтов от разных пользователей, с ограничением на чтение директорий других сайтов.
4. Установка Nginx с модулем pagespeed от google
5. Настройка Nginx как reverse proxy

Все этапы будут содержать описание и пояснения. Сам пост писался больше для себя, чтобы не потерять порядок настройки, но будет очень полезным для новичков, которые начинают разбираться в администрировании сервера. В качестве сервера установлен Ubuntu 16.0.4 только с SSH.

ЭТАП 1 (Установка Apache PHP)

Запускаем оболочку с root правами:

sudo -i

Устанавливаем apache:

apt install -y apache2

Ключ

 -y 

нужен для того чтобы в процессе установки, автоматически на все вопросы отвечал положительно. К примеру если выполнить:

 apt install apache2 

то в процессе установки нас спросят, действительно ли мы хотим установить.

Устанавливаем php (как mod_php)

 apt install -y php libapache2-mod-php 

На данном этапе у нас установиться php версии 7 как модуль apache.

ЭТАП 2 (Возможность выбора версий PHP)

На первом этапе мы установили сервер Apache PHP при чем PHP у нас работает как модуль Apache. Существует несколько режимов работы PHP подробную информацию можно прочитать по ссылке «Коротко о CGI, FastCGI, PHP-FPM и mod_php».

Если вам лень читать, то объясню проще:

1. mod_php — сам Apache выполняет php скрипт.

Плюсы: работает быстро, требует минимум настроек и знаний
Минусы: скрипты выполняются от пользователя apache (как правило www-data)

2. CGI/FastCGI — Сервер Apache запускает прикладной скрипт интерпретатора php-cgi, который в свою очередь выполняет php скрипт

Плюсы: скрипты выполняются от произвольного пользователя, можно использовать в связке с другими приложениями (Nginx PHP), конфигурацию PHP можно сделать индивидуальной
Минусы: скорость работы, дополнительная настройка

3.PHP-FPM — это модернизированный fast-cgi сервер который постоянно держит готовые для работы пул-процессов.

Плюсы: скорость работы, скрипты выполняются от произвольного пользователя, можно использовать в связке с другими приложениями (Nginx PHP-FPM — самая распространная реализация)
Минусы: дополнительная настройка, занимает порт, на каждого пользователя открывается свой порт.

Мы остановимся на CGI/FastCGI. На самом деле многие может испугать, что он самый медленный, но на большинстве shared хостингов, именно этот режим работы (ispmanager использует именно этот режим работы). Нам потребуется собрать из исходников версии php которые нам необходимы.

2.1 Сборка php из исходников

Обновляем репозиторий:

apt update

Устанавливаем необходимые для сборки пакеты:

apt install -y make 
git autoconf 
lynx 
wget 
build-essential 
libxml2-dev 
libssl-dev 
libbz2-dev 
libcurl4-openssl-dev 
libpng12-dev 
libfreetype6-dev 
libxpm-dev 
libmcrypt-dev 
libmhash-dev 
libmysqlclient-dev 
libjpeg62-dev 
freetds-dev 
libjson-c-dev 
re2c 
zlib1g-dev 
libpcre3 
libpcre3-dev 
unzip 
libxslt1-dev

Символ

используется как перенос строки, для удобства чтения.

Создаем папки для php:

mkdir -p /opt/source/php
mkdir -p /opt/php/

Переходим в директорию в которой будут храниться исходники php

cd /opt/source/php

Скачиваем необходимую версию php и распаковываем ёё:

wget -c http://php.net/get/php-5.6.18.tar.bz2/from/this/mirror -O php-5.6.18.tar.bz2
tar xvjf php-5.6.18.tar.bz2

В последней команде мы скачали по ссылке

php-5.6.18

и сохранили как php-5.6.18.tar.bz2

После чего распаковали архив.

Переходим в директория скаченного и распакованного php

cd /opt/source/php/php-5.6.18

Конфигурируем php

./configure --enable-cli 
 --prefix=/opt/php/php-5.6.18		
 --disable-rpath		
 --enable-calendar		
 --enable-discard-path 		
 --enable-fastcgi		
 --enable-force-cgi-redirect		
 --enable-fpm		
 --enable-ftp		
 --enable-gd-native-ttf		
 --enable-inline-optimization		
 --enable-mbregex		
 --enable-mbstring		
 --enable-pcntl		
 --enable-soap		
 --enable-sockets		
 --enable-sysvsem		
 --enable-sysvshm		
 --enable-zip		
 --with-bz2		
 --with-curl		
 --with-curl 		
 --with-freetype-dir		
 --with-gd		
 --with-gd 		
 --with-gettext		
 --with-jpeg-dir 		
 --with-jpeg-dir=/usr/lib/		
 --with-libdir=/lib/x86_64-linux-gnu		
 --with-libxml-dir=/usr		
 --with-mcrypt		
 --with-mhash		
 --with-mysql		
 --with-mysql 		
 --with-mysqli		
 --with-mysqli 		
 --with-openssl		
 --with-pcre-regex		
 --with-pdo-mysql		
 --with-png-dir=/usr		
 --with-zlib		
 --with-zlib-dir

Стоить обратить внимание на строку

—prefix=/opt/php/php-5.6.18

. Именно в эту директорию будет собран проект. Также вы самостоятельно можете добавлять или удалять необходимые модуль и компоненты php. Но при конфигурации обязательно должны быть —

enable-fastcgi

и

—enable-force-cgi-redirect

. После конфигурации собираем php

make
make install

Процесс сборки непривычно долгий, поэтому не стоит переживать по этому поводу. По завершению сборки можно проверить командой:

/opt/php/php-5.6.18/bin/php -v

В результате будет что то вроде:

PHP 5.6.18 (cli) (built: Jun 8 2022 15:59:20)
Copyright © 1997-2022 The PHP Group
Zend Engine v2.6.0, Copyright © 1998-2022 Zend Technologies

2.2 Настройка Apache

Далее нам потребуется чтобы Apache вызывал php скрипт через режим fastcgi. Устанавливаем и активируем mod_fcgi

apt install libapache2-mod-fcgid
a2enmod cgi fcgid actions

перезапустим сервис Apache

service apache2 restart

2.3 Создание CGI скрипта

Создадим обертку для запуска PHP-FastCGI

mkdir -p /opt/php/php-5.6.18/fcgi-bin

В данной папке создадим скрипт с именем

php

со следующим содержимом

#!/opt/php/php-5.6.18/bin/php-cgi

. Лично я использую редактор nano.

nano /opt/php/php-5.6.18/fcgi-bin/php

Вставляем код, выходим CTRL X и подтверждаем изменения.

Делаем файл испольняемым:

chmod  x /opt/php/php-5.6.18/fcgi-bin/php

В той же директории создаем файл php.ini () можно скопировать

/opt/source/php/php-5.6.18/php.ini-production

.

2.4 Настройка хоста для Apache

В примере будет показана настройка виртуального хоста по умолчанию:

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html
        <IfModule mod_fcgid.c>
            IPCCommTimeout 7200
            FcgidConnectTimeout 320
            MaxRequestLen 25728640
            FcgidMaxRequestsPerProcess 0
            FcgidBusyTimeout 3600
            FcgidOutputBufferSize 0
        </IfModule>

        <FilesMatch ".ph(p[3-5]?|tml)$">
                SetHandler fcgid-script
                FCGIWrapper /opt/php/php-5.6.18/fcgi-bin/php
        </FilesMatch>
        ErrorLog /var/www/html/error.log
        CustomLog /var/www/html/access.log combined
</VirtualHost>
<Directory /var/www/html>
        Options  Includes  ExecCGI
</Directory>

Перезапускаем настройки Apache:

service apache2 reload

ЭТАП 3 ( Возможность работы сайтов от разных пользователей, с ограничением на чтение директорий других сайтов.)

Для разграничения прав по пользователям у Apache есть 2 разных модуля suEXEC и ITK.

Рассмотрим как работает каждый из них:

ITK — При поступлении запроса, apache создает процесс-обработчик, который наследует права корневого процесса, но после проверки контекста меняет свои права на указанного пользователя.

suEXEC -При поступлении запроса apache запускает CGI и аналогичные собственные или сторонних разработчиков скрипты/программы внутри веб-папки домена от имени указанного пользователя.

suEXEC в нашем варианте предпочтительней из-за особенности архитектуры работы. Устанавливаем suEXEC

apt install apache2-suexec-custom
a2enmod suexec

Важно, для правильной работы suexec необходимы правильно выставить права на директории.
Как располагать директории вы должны определиться сами, в примере приведется пример, и он не является оптимальным.

Иерархия папок следующая:

|--/var/www/ - Корневая папка, права 751 владелец root
|----/php-bin - Папка храннения дефолтных настроек для php
|------/php-5.6.18 - Папка храннения дефолтных настроек для php-5.6.18
|--------php - Исполняемый файл для php-5.6.18
|--------php.ini - Дефольный файл настроке
|--------php.ini - Дефольный файл настроке
|----/apache-cert - папка хранения сертификатов для apache

Создаем папки для пользователя:

mkdir -p /var/www/users/admin
mkdir -p /var/www/users/admin/domain.ru
mkdir -p /var/www/users/admin/apache-log
mkdir -p /var/www/users/admin/php-bin
mkdir -p /var/www/users/admin/temp
mkdir -p /var/www/users/admin/temp/php-session

Копируем файлы настроек для php:

cp /opt/php/php-5.6.18/fcgi-bin/php /var/www/users/admin/php-bin/php
cp /opt/php/php-5.6.18/fcgi-bin/php.ini /var/www/users/admin/php-bin/php.ini

Создаем юзера (важно помнить что все пользователи в группе admin имеют доступ на запуск программ из sudo, поэтому при выборе имени admin он автоматически будет иметь права на выполнения sudo. В данном примере это не критично, но вам следует помнить об этом при создании пользователя).

useradd -m -s /bin/bash admin
passwd admin

Выставляем владельца папки:

chown admin:admin -R /var/www/users/admin

Выставляем корневую директорию для пользователя:

usermod -d /var/www/users/admin admin

Настраиваем виртуальные хосты в apache:

<VirtualHost *:8080>
	ServerAdmin webmaster@localhost
	DocumentRoot /var/www/users/admin/domain.ru

	SuexecUserGroup admin admin	

	<IfModule mod_remoteip.c>
	      RemoteIPHeader X-Forwarded-For
	      RemoteIPHeader X-Real-IP
	      RemoteIPInternalProxy 127.0.0.1
	</IfModule>

	<ifmodule mod_rewrite.c>
		RewriteEngine On
		RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
	</ifmodule>


	<IfModule mod_fcgid.c>
	    IPCCommTimeout 7200
	    FcgidConnectTimeout 320
	    MaxRequestLen 25728640
	    FcgidMaxRequestsPerProcess 0
	    FcgidBusyTimeout 3600
	    FcgidOutputBufferSize 0
	</IfModule>

	<FilesMatch ".ph(p[3-5]?|tml)$">
		SetHandler fcgid-script
		FCGIWrapper /var/www/users/admin/php-bin/php
	</FilesMatch>

	ErrorLog /var/www/users/admin/apache-log/error.log
	CustomLog /var/www/users/admin/apache-log/access.log combined
</VirtualHost>
<Directory /var/www/users/admin/www>
	AllowOverride All
	Options  Includes  ExecCGI
</Directory>

В настройках php.ini пользователя меняем session.save_path

session.save_path = /var/www/users/admin/temp/php-session

Перезапускаем apache:

service apache2 restart

ЭТАП 4 (Установка Nginx с модулем pagespeed от google)

Забегая вперед, для поддержки pagespeed в Nginx требуется пересобрать сам Nginx с этим модулем, но чтобы потом не лазить дополнительно в настройках, проще сначало установить его.
Изменяем порты для Apache:

/etc/apache2/ports.conf
  Ваши созданные виртуальные хосты

Перезапускаем Apache:

service apache2 restart

Устанавливаем ngnix:

apt-get install nginx

Собираем Nginx с pagespeed

Вначале необходимо установить все необходимы для сборки пакеты:

apt install -y build-essential zlib1g-dev libpcre3 libpcre3-dev unzip libxslt1-dev libgd-dev libgeoip-dev

Создаем папки для исходников nginx:

mkdir -p /opt/source/nginx
cd /opt/source/nginx

Скачиваем и распаковываем pagespeed и psol. Yt cnjbn g

wget https://github.com/pagespeed/ngx_pagespeed/archive/v1.11.33.4-beta.zip
unzip v1.11.33.4-beta.zip
cd ngx_pagespeed-1.11.33.4-beta
wget https://dl.google.com/dl/page-speed/psol/1.11.33.4.tar.gz
tar -xzvf 1.11.33.4.tar.gz

Сам psol скачивается и распаковывается в директории с ngx_pagespeed. Переходим в папку с Ngnix

cd /opt/source/nginx

Проверяем версию ngnix (по умолчанию в ubuntu 16.0.4 устанавливается 1.10.0):

nginx -V

Загружаем т версию NGINX:

wget https://nginx.ru/download/nginx-1.10.0.tar.gz
tar -xvzf nginx-1.10.0.tar.gz

Собираем nginx с теми же параметрами что и установленный, но в конце добавляем дополнительные модули:

cd /opt/source/nginx/nginx-1.10.0
./configure 
--with-cc-opt='-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads 
--add-module=/opt/source/nginx/ngx_pagespeed-1.11.33.4-beta 
--with-http_mp4_module

Собираем Nginx:

make
make install

Собранный бинарный файл Nginx располагается в директории /opt/source/nginx/nginx-1.10.0/objs/nginx. Для того чтобы установить, требуется просто заменить текущий испоняемый файл Nginx на собранный.

Остановим Nginx, заменим файл, и перезапустим его.

service nginx stop

#Переименовываем (на всякий случай) текущий nginx в nginx_backup:

mv /usr/sbin/nginx /usr/sbin/nginx_backup

# Перемещаем на его место новый собранный бинарник:

mv /opt/source/nginx/nginx-1.10.0/objs/nginx /usr/sbin/nginx

перезапускаем Nginx:

service nginx start

Создаем папку хранения кэша для pagespeed:

/var/www/temp/
/var/www/temp/page-speed/

Добавим /etc/nginx/nginx.conf в секцию http:

pagespeed on;
pagespeed FileCachePath "/var/www/temp/page-speed/";
pagespeed EnableFilters combine_css,combine_javascript,rewrite_images,rewrite_css,rewrite_javascript,inline_images,recompress_jpeg,recompress_png,resize_images;
pagespeed JpegRecompressionQuality 85;
pagespeed ImageRecompressionQuality 85;
pagespeed ImageInlineMaxBytes 2048;
pagespeed LowercaseHtmlNames on;

ЭТАП 5 (Настройка Nginx как reverse proxy )

Скажу скажу что в интернете кучу статей для настройки Nginx как reverse proxy. Я лиш приведу ознакомительный вариант настройки.

server { 

	listen 80; 
	server_name domain.ru; 
	access_log /var/log/nginx.access_log;


	location ~* .(jpg|jpeg|gif|png|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|tar|wav|bmp|rtf|swf|ico|flv|txt|xml|docx|xlsx)$ { 
		root /var/www/users/admin/domain.ru; 
		index index.html index.php; 
		access_log off; 
		expires 30d; 
		error_page 404 = @prox;
	} 

	location @prox{
		proxy_pass 127.0.0.1:8880; 
		proxy_set_header X-Real-IP $remote_addr; 
		proxy_set_header X-Forwarded-for $remote_addr; 
		proxy_set_header Host $host; 
		proxy_connect_timeout 60; 
		proxy_send_timeout 90; 
		proxy_read_timeout 90; 
		proxy_redirect off; 
		proxy_set_header Connection close; 
		proxy_pass_header Content-Type; 
		proxy_pass_header Content-Disposition; 
		proxy_pass_header Content-Length;
	}


	location ~ /.ht { 
		deny all; 
	} 


	location / { 
		proxy_pass 127.0.0.1:8880; 
		proxy_set_header X-Real-IP $remote_addr; 
		proxy_set_header X-Forwarded-for $remote_addr; 
		proxy_set_header Host $host; 
		proxy_connect_timeout 60; 
		proxy_send_timeout 90; 
		proxy_read_timeout 90; 
		proxy_redirect off; 
		proxy_set_header Connection close; 
		proxy_pass_header Content-Type; 
		proxy_pass_header Content-Disposition; 
		proxy_pass_header Content-Length; 
	} 
} 

Создание

Если на сайте предполагается использование базы данных, создать её можно в разделе панели управления «Базы данных». Для создания базы данных надо нажать на кнопку «Создать базу данных» и в открывшемся окне выбрать тип базы данных, указать имя базы данных и задать пароль, который будет использоваться при подключении к базе.

В созданную базу можно загрузить дамп — это содержимое базы данных в виде текстового файла, имеющего расширение «.sql». Дамп базы данных должен быть предварительно размещён на аккаунте. В разделе «Базы данных» для загрузки дампа предусмотрена опция «импортировать базу из файла» ( ссылка расположена в следующем менюКак разместить сайт в ISPmanager
 |
 REG.RU«Навигация по файлам аккаунта» выбирается файл дампа.enlightenedПодробная информация о работе с базами данных представлена в разделе помощи.

Хостинг php и mysql с бесплатным доменом по недорогой цене от

Классический PHP хостинг имеет одно несомненное преимущество — цена хостинга!
Если сравнивать производительность тарифов, то она будет незначительно отличаться от начальных тарифов SSD хостинга, однако при этом тарифы Host значительно дешевле. Если вы не готовы тратиться на этапе старта, если хотите опубликовать в сети Интернет информацию, которая носит некоммерческий характер и не призвана приносить доход, то скорее всего у вас не будет высоконагруженных скриптов, большого количества модулей и длительных ресурсоемких процессов. Зачем платить за дорогой хостинг и за те ресурсы, которые использоваться не будут?

При этом не стоит рассматривать хостинг на PHP с поддержкой MySQL как нечто архаичное. При формировании данной линейки мы используем современные конфигурации хостинг сервера: Intel Xeon E5 x2, 64GB RAM, LSI MegaRaid with CC, x8 600GB SAS и гарантируем высокую производительность для 95% популярных CMS.
Виртуальный PHP хостинг от shhost.ru имеет одно несомненное преимущество: если вы выбираете тариф Host2 и выше, то вы можете воспользоваться мультиверсионностью — указать для каждого виртуального хоста свою версию PHP — это позволит размещать на одной площадке сайты с различным функционалом и при этом не тратится на отдельную площадку.

Протестируйте наши тарифные планы в течение 10 дней, наши специалисты помогут с переносом.
А если вы определились с тарифом и готовы его приобрести, то мы заплатим вам за перенос 150 рублей. Узнайте подробности акции и станьте одним и з 10 000 довольных клиентов!

Хостинг для сайта с доменом, купить недорого у хостинг-провайдера

Хостинг на Linux или Windows?

Если ваш сайт еще не создан, то рекомендуем создавать его под Linux-платформы. Популярность данной
платформы заслужена и уходит к истокам сайтостроения.

Linux как в создании, так и в поддержке ресурса удобней, понятней и функциональней Windows-среды.
Оптимизированное под Linux программное обеспечение или приложение гораздо проще найти, чем под сайт,
созданный на ASP.NET. Виртуальный хостинг на Linux позволяет использовать несколько версий PHP на
одном аккаунте, включен бесплатный SSL и защита от DdoS.

Платформа Windows является более специфичной чем Umix-подобные, но это не означает, что она
невостребована. В 2022 году динамика создания сайтов на ASP.NET нисколько не
уменьшилась по сравнению с предыдущими периодами. Поэтому уточните у разработчика, на какой
платформе создан ваш сайт, использует он MySQL или MsSQL, и смело выбирайте тариф.

Тарифы Windows-хостинга безлимитны, как и тарифы Linux. Однако обратите внимание, что
мы не оказываем техническую поддержку по тарифным планам Windows.

В каких случаях нужен VPS:

1. Посещаемость сайта.
Если одномоментное количество уникальных посетителей превышает 1000, при этом сайт достаточно сложен
и
при обращении пользователя к странице она создает множество запросов к базе данных, то лучше всего
выбрать
VPS. Как показывает практика, сайт будет работать и на виртуальном хостинге, но это будет пределом
возможностей.

2. Наличие нестандартных скриптов и технологических решений.
Если вы планируете использовать нестандартные решения, например, скрипты для сбора статистики,
системы
резервного копирования контента, системы мониторинга, или ваш сайт работает на ПО, отличном от
конфигурации
виртуального хостинга, то наилучшим вариантом будет VPS-сервер.

3. Потребность в повышенных ресурсных емкостях.
Если ресурс основан на постоянных обращениях к большим базам данных, к которым постоянно
направляются запросы
пользователей, или вы хотите разместить игровой контент, который требует процессорных мощностей, то
в этом
случае рекомендуем рассмотреть аренду или покупку собственного сервера (Dedicated или Colocation).
Даже
мощный VPS для таких задач будет не совсем правильным решением.

4. Возможность администрирования.
Вы хотите самостоятельно экспериментировать с настройками, тюнинговать и оптимизировать ПО, вам
интересно
изучать Linux-среду и методики управления ею – однозначно VPS-сервер. Предоставление root-доступа,
широкий
спектр предустановленных шаблонов операционных систем и, конечно, возможность самостоятельного
администрирования.

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

В каких случаях достаточно виртуального хостинга?

Виртуальный хостинг — это площадка для размещения начинающего интернет-магазина, персональной
страницы, лендинга или лонгрида. Если в данный момент у вас небольшое количество посещений (менее
1000 уников), то достаточно исходить из общего объема файлов — в большинстве случаев для старта
можно выбрать минимальный тариф.

Тариф Альфа-SSD – 2Gb:
Недорогой хостинг для сайта с защитой от DDoS бесплатным SSL и 2Gb дискового пространства. Как
показывает практика, для старта этого более чем достаточно. В любом случае вы всегда сможете
увеличить дисковую квоту или изменить тариф, поэтому для начинающих рекомендуем тариф Альфа-SSD.

Тариф Бета-SSD – 7Gb:
Несомненными преимуществами тарифа Бета-SSD является увеличенное дисковое пространство и наличие скидки
50% на 1
домен, которую можно получить при покупке тарифа на 12 месяцев. Это предложение также актуально для
тех,
кто начинает свой путь в сети Интернет. Помимо финансовой экономии, покупая средний тариф, вы
закладываете
кирпичик в будущее вашего ресурса. Наличие дополнительной дисковой квоты позволит экспериментировать
с
контентом, изменять его составляющие, увеличивать объемы, добавлять видео-файлы, активно
взаимодействовать с BackUp.

Тарифы Гамма-SSD – 15Gb и Дельта-SSD — 20Gb:
Данные тарифы для продвинутых пользователей или ресурсов с устаревшей версией PHP.
Они позволяют бесплатно получить 1 домен, который будет отличным дополнением к существующим сайтам
в качестве синонима или для редиректа. Помимо этого, поддержка версий PHP 5.2 и 5.3 позволят тем,
кто не
готов изменять устоявшийся успех своего сайта, развиваться и не заботиться о несовместимости версий.

Представленные тарифы хостинга безлимитны и не имеют ограничений по количеству:

Каждый из тарифов Linux-хостинга оптимизирован под все популярные CMS, но если вы нацелены создать
коммерчески успешный ресурс, в частности интернет-магазин, то мы рекомендуем использовать CMS
«1С-Битрикс».
Все безлимитные тарифы Linux, начиная с «Альфа-SSD», поддерживают CMS «1С-Битрикс». Создание сайта на
базе
этой CMS предусматривает удобную панель управления сайтом, большое количество встраиваемых
расширений
с гарантированной поддержкой от разработчика, готовый платежный шлюз, повышенную устойчивость ко
взлому
сайта злоумышленниками.
При покупке редакций CMS Битрикс для бизнеса вы получаете хостинг для 1С-Битрикс в подарок.

Хостинги с поддержкой php 8.x 2022

PHP 8 – последняя стабильная ветка PHP по состоянию на 2021 год. Восьмая версия содержит ряд серьезных улучшений языка для разработчиков, включая: улучшения типов и обработки ошибок, именованные атрибуты и атрибуты, улучшение и упрощение определения свойств в конструкторе, улучшения сравнения строк и чисел, а также поддержку JIT и множество других крупных и не очень нововведений (подробности можно посмотреть на официальной странице проекта). Производительность PHP8 тоже выросла относительно седьмой ветки. При этом популярные CMS пока не поддерживают полноценно восьмую версию. Так что, данное обновление будет в первую очередь интересно разработчикам и вебмастерам, работающим с фреймворками и нативным кодом PHP.

И казалось бы совсем недавно мы только сделали подборку хостингов с поддержкой PHP 7.3 и 7.4, как некоторые особо продвинутые хостеры уже анонсировали поддержку PHP 8. И ситуация на самом деле складывается интересная, с одной стороны далеко не все хостеры еще внедрили версию 7.х, а другие уже предлагают восьмерку. При этом разработчики PHP заявили о прекращении поддержки версии 7.2, и многие хостеры также анонсировали отказ от этой версии.

Ну а раз PHP 8 так активно внедряется провайдерами, значит на него есть достаточный спрос среди пользователей. И мы решили сделать актуальную подборку виртуальных хостингов, которые уже сейчас готовы предложить PHP 8.x. Список будет пополняться по мере внедрения новой версии у провайдеров.

Шаг 1: регистрируемся на amazon.

Процедура регистрации

обычно не вызывает вопросов. Единственный совет — вводить реальные или близкие к реальным данные. Семенов Горбунковых с улицы Горького давно не регистрируют, а если неправильно указать индекс города, то система даст скрытый отлуп на этапе проверки кода по телефону.

Перед тем как вбивать данные кредитной карты, нужно убедиться что по ней доступно для снятия минимум 85р для Mastercard и 75р для Visa. В зависимости от региона и типа кредитной карты в конце процесса регистрации нас могут попросить подтвердить свой сотовый телефон.

Тут правил 3 — вписывать номер нужно без восьмерки и кода страны (10 цифр), не забывать правильно выбирать страну и начинать вводить код с клавиатуры только после того как синтезированная телефонная барышня перестанет говорить и затаится в ожидании.

Если подтвердить не попросят, значит Амазону очень понравилась ваша кредитка и у них еще еще не было проблем с пользователями из вашего диапазона адресов. Но поскольку нас больше всего интересует сервис EC2 (для которого верификация обязательна), то подтверждать 4 цифры по телефону придется в любом случае. После регистрации с карты снимут 1 доллар (и потом его не вернут) и сразу предоставят доступ к сервису хранения файлов

S3

и к шикарной консоли управления


К слову сказать, с самого начала все картинки из этого сообщения лежали именно на сервисе

S3

и 5Гб места на нем тоже входят в бесплатный годовой пакет (но бесплатный лимит кончился меньше чем за сутки). На

S3

можно создать корзину (

Create Bucket

), включить галку

Enabled

на вкладке

Website

и легко организовать хранилище файлов. Например, если назвать корзину словом

test86

и положить в нее файл

tеst85.7z

, то из браузера он будет виден по адресам

Шаг 10: настройка ftp.


Установим vSFTPd:

sudo yum install vsftpd

Добавляем его в автозапуск и пробуем запустить:

sudo /sbin/chkconfig --levels 235 vsftpd on
sudo service vsftpd start

Редактируем конфигурацию:

sudo mcedit  /etc/vsftpd/vsftpd.conf


Изменяем значения параметров:

anonymous_enable=NO
local_enable=YES
write_enable=YES

Добавляем в конец файла:

pasv_enable=YES
pasv_min_port=1024
pasv_max_port=1048
pasv_address=107.21.246.159

Не забудьте вписать тут свой IP

Кнопкой F2 сохраняем изменения, выходим из редактора через F10 и перезапускаем FTP сервер:

sudo service vsftpd restart


Теперь можно пробовать подключиться к нашему серверу по FTP любым клиентом с поддержкой PASV режима.

В качестве имени хоста используем наш IP, пользователь

www

, пароль из шага номер 8. Режим PASV включен принудительно. Подключаемся и пробуем залить в папку

/var/www

любой файл. Если не получается, говорим:

sudo chmod 0755 /var/www

и пробуем еще раз.


Примерно вот так это выглядит во FlashFXP:

Как разместить сайт в ISPmanager
 |
 REG.RU

Если залилось с самого начала, то не нужно менять права с 750 на 755 (это дополнительная дырка в безопасности)и проверяем права доступа к файлу. Он должен создаться с правами 0644. Если все совпадает, то переходим к 11-му шагу.

Шаг 12: включаем балансировку нагрузки (load balancers).

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

Load Balancers

периодически просто обращается к какому либо URL на сервере и делает выводы из времени отклика. Отсюда логически вытекает самая распространенная ошибка в настройке. По умолчанию предлагается пинговать индексную страницу сайта, а кто знает сколько она может весить в произвольном случае?

ping.html

и впишем туда одинокую единичку без юникодов, пробелов и переводов строк. В результате на проверку всегда будет тратиться ровно 1 байт трафика. Этот файл нужно загрузить через

ftp

в корень сайта перед созданием балансера.


Имя может быть произвольным, но уникальным если балансеров несколько.

Целью проверки выбираем ping.html
imageПроверять будем наш уже запущенный сервер
image
imageУра и все! Можно открывать в браузере наш IP адрес, заливать PHP скрипты через FTP и общаться из них с MySQL. Пример:
image
Не забывайте периодически контролировать расходы ресурсов в разделе управления аккаунтом и постарайтесь не пропустить момент, когда ваш бесплатный хостинг вдруг станет платным. При превышении лимитов любого из бесплатных сервисов, он не останавливается, а становится платным.
Расценки за превышение бесплатных норм для S3 и EC2

Вместо заключения:Не стоит думать, что все описанные манипуляции являются оптимальными и обеспечивают хоть какой-то уровень безопасности. Сервер в таком виде годится только для тестирования и хостинга домашних страничек с десятком посетителей в месяц.

Довести все это до ума можно и это даже не сложно для грамотного человека. Засада в том, что грамотными становятся не день и не за год и вообще в одном человеке редко совмещается писатель на простонародном php и специалист в настройке серверов. Поэтому прежде чем отпускать это все безобразие в свободное плавание, попросите, за пару бутылок коньяка, какого-нибудь знакомого бородатого юниксоида законнектиться к вашему серверу по SSH.

Шаг 3. загрузите архив сайта и извлеките его.

Теперь, когда вы изучили лучшие инструменты и узнали, как загрузить свой сайт в интернет, пришло время засучить рукава и окунуться в процесс.

Начнём с файлового менеджера Hostinger — нашего пользовательского инструмента, предназначенного для облегчения рабочего процесса каждого веб-мастера. После его открытия выберите значок Загрузить файлы в правом верхнем меню.

Затем вам нужно выбрать архив веб-сайта через свой компьютер и импортировать его на наш сервер.

Затем используйте функцию Извлечь из верхнего меню, чтобы распаковать архив.

И это подводит итог этому шагу. Следующий будет посвящён тому, чтобы все файлы находились в правильной папке.

Если вы решили использовать FTP с FileZilla для загрузки своего сайта, мы рекомендуем предварительно распаковать архив на вашем локальном компьютере (поскольку FTP-клиент не имеет функции извлечения).

Делая это, вы сможете перенести все файлы непосредственно в public_html без дополнительной работы. В противном случае вам нужно будет подключиться через SSH позже и извлечь архив вручную.

Шаг 5: настройка соединения с бд

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

Расположение конфигурационного файла для других CMS Вам нужно уточнять на сайте разработчиков Вашей CMS.

Самый простой способ отредактировать файл — сделать это через Файловый менеджер. Зайдите в него и перейдите в нужный каталог, где располагается данный файл. Нажмите на конфигурационный файл правой кнопкой мыши и выберите «Правка» — откроется редактор.

Кажется, что тут достаточно очевидно, какие данные куда вписывать. На нашем хостинге данные реквизиты формируются следующим образом:

Отредактировав файл, выберите в меню редактора Файл -> Сохранить, после чего закройте редактор.

Вот и все! Вы выполнили все шаги и теперь Ваш сайт уже должен начать работать на нашем хостинге. Не забывайте, что свежезарегистрированный домен заработает не сразу, равно как и домен, у которого изменялись DNS-записи. Но совсем скоро сайт начнет открываться по своему имени, и Вы сможете начать принимать на нем первых посетителей =)

Не забудьте, что у каждой CMS есть свои тонкости и нюансы при переносе: необходимость чистить кэш, править пути к файлам, править пути в базе и.т.п. При самостоятельном переносе сайтов на CMS лучше сначала ознакомиться с такими нюансами на официальных форумах.

Также напоминаем Вам, что наша Техническая поддержка работает круглосуточно и без выходных, так что в любое время дня и ночи Вы можете обратиться с любым вопросом. Мы с радостью поможем Вам.

Успехов в сайтостроении!

Шаг 5: развертывание образа операционной системы.


Итак, у нас есть ключ и дополнительная пользовательская группа. Теперь можно смело нажимать

Launch Instance

из меню

EC2 DashboardСогласимся на Classic Wizard.
imageНаш выбор это 32-x или 64-х битный Amazon Linux AMI.
imageОставляем все установки по умолчанию.
imageВключаем защиту от удаления.
imageТеги вбивать не обязательно.
imageБудем использовать уже сгенерированные ключи.
imageSecurity Group индекс-web.
image
image

После запуска в списке Instances появится наш микро-сервер.

Шаг 6: регистрируем ip адрес для сервера.


В меню

Elastic IPs

сначала резервируем себе IP адрес.

image
image

Обратите внимание что резервирование незакрепленного за работающим сервером IP адреса не входит в бесплатный пакет. За это придется платить по центу в час. Как только IP присваивается запущенному северу, он тут же становится бесплатным.

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

Шаг 7: подключаемся к серверу по ssh.


Для этой цели можно использовать массу разнообразных программ, но вся дальнейшая инструкция написана для виндового и бесплатного

Из архива нам в первую очередь понадобится

puttygen.exe

. Запускаем, выбираем

Conversions/Import keyimage
imageputty.exe, вбиваем наш IP в поле Host Name.
image
image

и нажимаем кнопку Open. В окошке терминала не должно быть никаких сообщений об ошибках, а в предложение:

login as:

нужно ввести

Оцените статью
Хостинги