Как настроить Laravel API для порта 8000 с apache2? - PullRequest
0 голосов
/ 05 июля 2019

Я новичок в apache2 и DigitalOccean.У меня есть API проекта Laravel.Я установил php mysql и apache2 на сервер DigitalOcean.Я хочу получить доступ к API с IP-адресом и номером порта 8000 (например, http://139.59.28.165:8000) (порт 8000 включен в брандмауэре). Но когда я просматриваю ссылку http://139.59.28.165:8000,, отображается This site can’t be reached.

This site cannot be reached

Но без номера порта он показывает каталог

enter image description here

Но я хочус IP-адресом и номером порта, например: enter image description here

CurrentRoot Document (/etc/apache2/sites-available/000-default.conf)

<VirtualHost *:80>

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/crm-api


    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

Ответы [ 4 ]

1 голос
/ 09 июля 2019

Попробуйте это

Создайте файл конфигурации на имя сервера с помощью sudo nano /etc/apache2/sites-available/139.59.28.165:8000.conf и добавьте следующее содержание

<VirtualHost *:8000>
        ServerName 139.59.28.165:8000
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/crm-api/public

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        <Directory /var/www/crm-api>
                AllowOverride All
        </Directory>

</VirtualHost>

Запустите следующую команду

sudo a2dissite 000-default.conf
sudo a2ensite 139.59.28.165:8000.conf
sudo a2enmod rewrite
sudo service apache2 restart

Добавить следующее в hosts файле /etc/hosts

127.0.0.1 139.59.28.165

А также добавьте свой порт в ports configuration /etc/ports.conf

Listen 8000

Не забудьте перезапустить apache2 sudo service apache2 restart

1 голос
/ 05 июля 2019

Измените порт в vhost на 8000

<VirtualHost *:8000>

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/crm-api


    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

Также вы можете установить для DocumentRoot значение / var / www / crm-api / public

Laravel указывает, что общая папка должна быть корнем документа.

Затем продолжите и перезапустите apache.

0 голосов
/ 05 июля 2019

Вам нужно изменить свой порт с локального сервера, если вы используете wamp или xampp, вы должны изменить его из конфигурационного файла Apache и сделать его 8000 вместо 80

0 голосов
/ 05 июля 2019

Вы должны изменить порт вашего виртуального хоста на 8000 и добавить публичный в конце DocumentRoot.desable a enable ваша конфигурация.

<VirtualHost *:8000>

   ServerAdmin webmaster@localhost
   DocumentRoot /var/www/crm-api/public


  ErrorLog ${APACHE_LOG_DIR}/error.log
  CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Это похоже на то, что apache2 не слушает 8000, вам нужно отменить его, отредактировав /etc/apache2/port.conf и перезапустив сервер

Listen 80
Listen 8000
<IfModule ssl_module>
    Listen 443
</IfModule>

 <IfModule mod_gnutls.c>
    Listen 443
 </IfModule>

vim: синтаксис = apache ts = 4 sw = 4 sts = 4 sr noet

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...