Jump to content

nginx как front-end к apache


Ректор
 Share

Recommended Posts

Такой я уж человек, считающий что клубы созданы для помощи людям.

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

итак задача.

планирую развёртывание  nginx как front-end к apache для сервера который будет на облочном хостинге.

Исходные данные, 1 форум, посещаемость 4000 в сутки, БД 5Гб, 2 форум на развите, пока потолок до 100 пользователей и третий 30 в сутки. суммарное место 30GB

SSD + 1 проц со 100% гарантией 2GB оперативки. (железо растягивается в обе стороны)

Подскажите может правильную статью или процесс установки и настройки сервера и самого кэширования в АЦ. 

Сегодня пробовал по это инструкции, Как установить и настроить LEMP (Linux, Nginx, MySQL, PHP) на сервере с Ubuntu 16.04 – Vscale Community
https://community.vscale.io/hc/ru/community/posts/208340569-Как-установить-и-настроить-LEMP-Linux-Nginx-MySQL-PHP-на-сервере-с-Ubuntu-16-04

но тут нету указаний как осуществить nginx как front-end к apache да и установки апача нет.

наверх ставил phpmyadmin, но так и не включил его.

Я не админ и не разработчик, прошу понять и простить, ну и помочь.

Сейчас сервак сейчас стоит на ubuntu 16,04 Apache 2. php5.6,1 проц 3гб памяти и педалит жутко. Вот ему и готовлю адекватную замену

где я ошибся?

 1  apt-get update
    2  apt-get upgrade
    3  apt-get install nginx
    4  systemctl status nginx
    5  nginx -v
    6  sudo apt-get install mysql-server
    7  sudo mysql_secure_installation
    8  sudo systemctl status mysql
    9  mysql --version
   10  sudo apt-get install php php-cli php-fpm php-mysql
   11  sudo nano /etc/php/7.0/fpm/php.ini
   12  sudo systemctl restart php7.0-fpm
   13  php -v
   14  sudo nano /etc/nginx/sites-available/default
   15  sudo systemctl restart nginx
   16  sudo nano /var/www/html/phpinfo.php
   17  sudo systemctl restart nginx
   18  sudo nano /etc/nginx/sites-available/default
   19  sudo systemctl restart nginx
   20  sudo nano /etc/nginx/sites-available/default
   21  sudo systemctl restart nginx
   22  apt-get install apache2
   23  a2enmod rewrite
   24  apache2ctl -M | grep "rewrite_module"
   25  sudo nano /etc/apache2/ports.conf
   26  touch /etc/apache2/sites-available/example-apache.con
   27  sudo nano /etc/apache2/sites-available/example-apache.conf
   28  a2ensite example-apache.conf && service apache2 start
   29  touch /etc/nginx/sites-available/example_nginx.conf
   30  sudo nano /etc/nginx/sites-available/example_nginx.conf
   31  cd /etc/nginx/sites-enabled/
   32  ln -s ../sites-available/example_nginx.conf example_nginx.conf
   33  service nginx reload
   34  sudo nano /etc/nginx/sites-available/example_nginx.conf
   35  cd /etc/nginx/sites-enabled/
   36  service nginx reload
   37  a2ensite example-apache.conf && service apache2 start
   38  service nginx reload
   39  sudo apt-get install phpmyadmin
   40  sudo apt-get install php-mbstring php-gettext
   41  sudo phpenmod mcrypt
   42  sudo phpenmod mbstring
   43  sudo systemctl restart apache2
   47  sudo systemctl restart nginx

при установке phpmysdmin пишет что необходимо выбрать что мы будем использовать, апач2 или что-то там, но во многих гайдах пишут, что если мы ставим его для nginx То и просто пропускаем этот пункт.

Ставил я и так и так. и всё равно phpmyadmin  не открывается.

Вопросов ещё много, наберёмся терпением :$

Edited by Ректор
Link to comment
Share on other sites

Привет, не рекомендовал бы заниматься этим, если нет достаточного опыта. Поставить софт не самая сложная проблема и выполняется по одному из множества мануалов в интернете, сложность заключается в правильной настройке всего этого добра, а то можно делов натворить. Вот например ман хороший - https://serveradmin.ru/nginx-php-fpm-na-centos-7/

Вообще думаю блог вести по основам этого всего, сам конечно к опытным себя не причислю, но кое-чего знаю.

ЗЫ: заведу блог на днях https://invisionbyte.ru/blogs/, сейчас пока очень занят. 

Link to comment
Share on other sites
1 минуту назад, Константин сказал:

Привет, не рекомендовал бы заниматься этим, если нет достаточного опыта. Поставить софт не самая сложная проблема и выполняется по одному из множества мануалов в интернете, сложность заключается в правильной настройке всего этого добра, а то можно делов натворить. Вот например ман хороший - https://serveradmin.ru/nginx-php-fpm-na-centos-7/

Вообще думаю блог вести по основам этого всего, сам конечно к опытным себя не причислю, но кое-чего знаю.

ЗЫ: заведу блог на днях https://invisionbyte.ru/blogs/, сейчас пока очень занят. 

не всегда есть возможность заплатить, хотя не столько и много просят на хостинге, как я не могу сформулировать задачу, да и где уверенность что они сделают так как нужно, а не так как получилось?

думал на форуме мне подробно расстолкают как нужно делать для этих форумов.

да и знать азы тоже не помешало бы. Может по форумски поможешь с настройкой?

 

Link to comment
Share on other sites

@Ректор, знаешь чего могу сказать - тебе нужен хороший сисадмин, который настроит сервер и понаблюдает над твоими форумами под нагрузкой хотя бы несколько дней. 

2 минуты назад, Ректор сказал:

думал на форуме мне подробно расстолкают как нужно делать для этих форумов.

Боюсь даже разработчики тебе ничего не растолкуют - т.к. у каждого админа своя ситуация/нагрузка/железо и т.д. К тому же полно хостингов, где уже есть готовые настроенные серверы, что ты и где захотел настраивать - не совсем понятно. Сколько просит хостер за настройку этого всего добра? И какие параметры сервера?

Link to comment
Share on other sites
Только что, Константин сказал:

@Ректор, знаешь чего могу сказать - тебе нужен хороший сисадмин, который настроит сервер и понаблюдает над твоими форумами под нагрузкой хотя бы несколько дней. 

Боюсь даже разработчики тебе ничего не растолкуют - т.к. у каждого админа своя ситуация/нагрузка/железо и т.д. К тому же полно хостингов, где уже есть готовые настроенные серверы, что ты и где захотел настраивать - не совсем понятно. Сколько просит хостер за настройку этого всего добра? И какие параметры сервера?

всё что предлагает мой хостер это установка любой серверной ОС, дальнейшие настройки от 20$

1 проц 3гб памяти растягивается в любые стороны.

Link to comment
Share on other sites

SSD я так понимаю тоже резиновый? Что по оплате за месяц? Где расположен дата-центр? VPS или выделенный сервер?

Link to comment
Share on other sites
5 минут назад, Константин сказал:

SSD я так понимаю тоже резиновый? Что по оплате за месяц? Где расположен дата-центр? VPS или выделенный сервер?

на данный момент ссд 5гб. остальное 30гб, но думаю нужно перезжать полностью на ссд. облачный хостинг https://hoster.by это беларусь

оплата сейчас 20$ в месяц

Edited by Ректор
Link to comment
Share on other sites

отвечу сам себе и остальным кто будет нуждаться.

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

вот по этой инструкции https://blog.gtxtymt.xyz/server/ustanovka-lemp-servera-nginx-1-10php-7-0-mariadb-10-1-phpmyadmin/

    1  sudo apt-get update
    2  sudo apt-get install nginx
    3  nginx -v
    6  sudo apt-get install software-properties-common
    7  sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
    8  sudo add-apt-repository 'deb [arch=amd64,i386] http://mirror.timeweb.ru/mariadb/repo/10.1/ubuntu xenial main'
    9  sudo apt-get update
   10  sudo apt-get -y install mariadb-server
   11  sudo service mysqld start
   12  sudo mysql_secure_installation                                                                                                        
   16  sudo apt-get install php7.0 php7.0-fpm php7.0-mysql php7.0-mbstring php7.0-common php7.0-gd php7.0-mcrypt php-gettext php7.0-curl php7.0-cli php7.0-xml
   17  sudo nano /etc/php/7.0/fpm/php.ini
   18  sudo nano /etc/php/7.0/fpm/pool.d/www.conf
   19  sudo nano /var/www/html/phpinfo.php
   20  sudo nginx -t
   21  sudo service nginx restart
   22  sudo service php7.0-fpm restart
   23  sudo apt-get -y install phpmyadmin
   24  ln -s /usr/share/phpMyAdmin /usr/share/nginx/html
   25  sudo systemctl restart nginx.service
   26  sudo service nginx restart
   27  sudo reboot

   28  sudo nano /etc/nginx/sites-available/default
   30  sudo apt-get update
   31  sudo apt-get install apache2
   32  sudo a2enmod rewrite
# Если мы отдаем 80 порт Nginx, то у апача его нужно забрать, в /etc/apache2/ports.conf меняем порт на любой, например обычно берут 8080
Listen 127.0.0.1:8080
   33  sudo service apache2 restart
   34  service nx reload
   35  sudo service apache2 restart
#дальше меняем /etc/apache2/sites-available/мойсайт.ру.conf
#у меня он такого вида

Цитата

<VirtualHost 127.0.0.1:8080>

        ServerName мойсайт.ру
        ServerAlias www.мойсайт.ру

        ServerAdmin admin@мойсайт.ру
        DocumentRoot /var/www/мойсайт.ру

        DirectoryIndex index.php index.htm index.html

        <Directory "/var/www/мойсайт.ру">
                Options FollowSymLinks
                AllowOverride All

                Order allow,deny
                Allow from all
        </Directory>   

        ErrorLog ${APACHE_LOG_DIR}/мойсайт.ру/error.log
        CustomLog ${APACHE_LOG_DIR}/мойсайт.ру/access.log combined       
</VirtualHost>

#создаём ссылку тут /etc/apache2/sites-enabled/мойсайт.ру.conf вот на этот файл /etc/apache2/sites-available/мойсайт.ру.conf

#тоже самое и для nginx /etc/nginx/sites-available/мойсайт.ру.conf
#у меня он такого вида

server {
location /phpmyadmin {
      alias /usr/share/phpmyadmin;
      location ~ \.php$ {
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $request_filename;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass 127.0.0.1:9000;
        }
      }

        listen 80;
        root /var/www/мойсайт.ру;
        index index.php index.html index.htm;
        server_name ip сервера или урл;

        client_max_body_size 32m;
location / {
    try_files $uri $uri/ /index.php;
        }

    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;

        location = /50x.html {
        root /usr/share/nginx/html;
    }
location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_index index.php;
        include fastcgi_params;
        }
}

#создаём ссылку тут /etc/nginx/sites-enabled/мойсайт.ру.conf вот на этот файл /etc/nginx/sites-available/мойсайт.ру.conf

   36  sudo locale-gen ru_RU
   37  sudo locale-gen ru_RU.UTF-8
   38  sudo update-locale
   39  locale -a
   40  apt-get upgrade libxml2
   41  sudo reboot  
   43  locale
   44  export LC_ALL=ru_RU.utf8
   45  export LANG=ru_RU.utf8
   46  locale
   47  sudo reboot
   48  export LC_ALL="ru_RU.utf8"
   49  locale 
   52  sudo reboot

#закидываем файлы var/www/мойсайт.ру

Радуемся жизни.

 

 

Link to comment
Share on other sites
  • 2 years later...
  • 1 month later...
В 12.04.2019 в 00:14, invisionbyte сказал:

Совместная их связка используется сейчас на большинстве linux серверах.

apache - лишнее не нужное ПО, IPS Отлично работает на php-fpm. У человека есть root доступ к серверу, поэтому, вопрос актуален. Php-fpm работает на много быстрей.

Ой, тема 2017 года, ясно. Наверное, стоит её закрыть для обсуждения, ведь тут инструкция.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

Messenger

    ×
    ×
    • Create New...

    Important Information

    By using our site you agree to our Privacy Policy