Ответы пользователя по тегу Apache HTTP Server
  • Какой материал почитать о создании поддомена?

    Cram
    @Cram
    System Administrator
    Распараллеливание хорошее дело, но начинать надо не с него.
    Какой у вас WEB сервер?
    Если это Apache - переходите на Nginx или на связку Apache(backend, для PHP) + Nginx (frontend, для статических файлов).
    Ответ написан
    Комментировать
  • Виртуальный хостинг на Linux. Полный цикл настройки?

    Cram
    @Cram
    System Administrator
    Я использую Virtualmin.
    Немного донастроил - подключил nginx в качестве фронт-энда для apache.
    Остальное Virtualmin сам делает.

    Но он не решает проблему с установкой разных версий PHP.
    Ответ написан
    Комментировать
  • Как разделить сайты на бекенде?

    Cram
    @Cram
    System Administrator
    Во первых, nginx должен слушать порт 80 (можно только внешний ip), а apache другой, например 81 (можно только ip 127.0.0.1).

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

    Соответственно настройки:

    Выносим все настройки reverse-proxy nginx в отдельный файл:
    >>> /etc/nginx/proxy.conf >>>
    # настройка проксирования
    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    # настройка кеширования
    proxy_cache_key "$scheme://$host$request_uri $do_not_cache";
    proxy_cache cache;
    proxy_cache_valid 200 302 60m;
    proxy_cache_valid 404 1m;


    >>> /etc/nginx/sites-available/site1.ru.conf >>>
    server {
    listen 123.123.123.123:80;
    server_name www.site1.ru site1.ru;
    access_log /var/log/nginx/site1.ru_nginx_access_log;
    error_log  /var/log/nginx/site1.ru_nginx_error_log;
    location / {
    include /etc/nginx/proxy.conf;
    proxy_pass http://site1.ru:81;
    }
    #Статику отдаём напрямик
    location ~* ^.+\.(jpe?g|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mp3)$ {
    expires 30d;
    root /home/site1.ru/public_html;}
    # Запрещаем открытие .htaccess через браузер
    location ~ /\.ht {deny all;}
    }


    >>> /etc/nginx/sites-available/site2.ru.conf >>>
    server {
    listen 123.123.123.123:80;
    server_name www.site2.ru site2.ru;
    access_log /var/log/nginx/site2.ru_nginx_access_log;
    error_log  /var/log/nginx/site2.ru_nginx_error_log;
    location / {
    include /etc/nginx/proxy.conf;
    proxy_pass http://site2.ru:81;
    }
    #Статику отдаём напрямик
    location ~* ^.+\.(jpe?g|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mp3)$ {
    expires 30d;
    root /home/site2.ru/public_html;}
    # Запрещаем открытие .htaccess через браузер
    location ~ /\.ht {deny all;}
    }


    >>> /etc/apache2/sites-available/site1.ru.conf >>>
    <VirtualHost 127.0.0.1:81>
    ServerName site1.ru
    ServerAlias www.site1.ru
    DocumentRoot /home/site1.ru/public_html
    ...
    </VirtualHost>


    >>> /etc/apache2/sites-available/site2.ru.conf >>>
    <VirtualHost 127.0.0.1:81>
    ServerName site2.ru
    ServerAlias www.site2.ru
    DocumentRoot /home/site2.ru/public_html
    ...
    </VirtualHost>
    Ответ написан
    Комментировать