Как настроить Apache на Ubuntu 14.04, если Nginx уже установлен

Я следовал Учебному руководству на Цифровом Океане и установил сервер LEMP успешно.

Затем я считал об использовании обратного прокси Nginx и Apache для хостинга нескольких веб-сайтов на той же капельке.

Так как у меня есть Большая капелька, я хотел бы разместить два Laravel Основанный APP на той же капельке.

Так с помощью этого учебного руководства я Установленная ССЫЛКА apache2

Но к несчастью апачский не работает

$ sudo service apache2 reload
 * Reloading web server apache2                                               *
 * Apache2 is not running

Таким образом, я сделал

 sudo netstat -tlpn

и получил эту таблицу

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         Stat     e       PID/Program name
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LIST     EN      5377/nginx
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LIST     EN      1233/sshd
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LIST     EN      3529/mysqld
tcp6       0      0 :::80                   :::*                    LIST     EN      5377/nginx
tcp6       0      0 :::22                   :::*                    LIST     EN      1233/sshd

Я - пользователь Windows, и я понятия не имею о том, как зафиксировать это.

Может любой выручать меня.

Спасибо,

2
задан 13 January 2016 в 18:58

2 ответа

Длинная короткая история - необходимо работать, апачи, слушающие на другом порте, (Слушают), так как порт 80 уже используется nginx.

-1
ответ дан 2 December 2019 в 02:53

Nginx работает на порте 80, и это в порядке. Порт по умолчанию для Apache httpd является портом 80, также и это - проблема.

Реконфигурируйте Apache httpd

  • Используйте порт 8080 для Вашего Apache httpd. Открытый ports.conf

    sudo nano vi /etc/apache2/ports.conf
    

    и замена

    Listen 80
    

    с

    Listen 8080
    

    Сделайте то же для виртуальных хостов при необходимости.

  • Apache перезапуска httpd

    sudo systemctl restart apache2
    

    или на Надежном человеке с

    sudo service apache2 restart
    
  • Проверьте вывод netstat

    $ sudo netstat -tulpn | grep apache2
    tcp6   0  0 :::8080   :::*  LISTEN  22769/apache2
    

    И да, также с выводом выше, httpd слушает на tcp порте 80.

  • Реконфигурируйте nginx, чтобы работать прокси и использовать Ваш Apache httpd в качестве бэкенда, например, для порта 80 путем редактирования /etc/nginx/sites-available/default

    sudo nano /etc/nginx/sites-available/default
    

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

    proxy_pass http://127.0.0.1:8080;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto http;
    proxy_set_header X-Forwarded-Port 80;
    proxy_set_header Host $host;
    
  • Перезапуск nginx

    sudo systemctl restart nginx
    

    или на Надежном человеке с

    sudo service nginx restart
    
  • Проверьте вывод netstat

    $ sudo netstat -tulpn | grep -P 'nginx|apache2'
    tcp  0  0 0.0.0.0:80  0.0.0.0:*  LISTEN  22973/nginx -g daem
    tcp6 0  0 :::80       :::*       LISTEN  22973/nginx -g daem
    tcp6 0  0 :::8080     :::*       LISTEN  22769/apache2 
    

И это - хорошая идея настроить httpd для слушания только на 127.0.0.1.

4
ответ дан 2 December 2019 в 02:53

Другие вопросы по тегам:

Похожие вопросы: