Digital Ocean Deployment Laravel

У меня возникли некоторые проблемы при развертывании нового приложения Laravel для моей учетной записи в Ocean Ocean. Я следовал за шагами, изложенными в этом уроке:
http://davidmyers.name/post/laravel-on-digital-ocean

Тем не менее я обнаружил, что при попытке получить доступ к странице индекса, я получаю:

Forbidden

You don't have permission to access / on this server.

Apache/2.4.7 (Ubuntu) Server at www.scheduleify.com Port 80

Тем не менее, я могу получить доступ к PHPMyAdmin просто отлично, зайдя на www.scheduleify.com/phpmyadmin

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

В статье, указанной выше, автор упоминает, что при открытии файла:
/etc/apache2/sites-enabled/000-default.conf

Нужно увидеть следующие две строки:

DocumentRoot /var/www
<Directory /var/www>

Это весь мой файл, в котором, кажется, отсутствует один из них (я уже изменил тот, который был там соответственно):

<VirtualHost *:80>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com

ServerAdmin webmaster@localhost
DocumentRoot /root/scheduleify/public

# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn

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

# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host

only
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>

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

Еще одна вещь, которую я заметил: если я зайду в свой корневой каталог, зайду в папку клонированного репозитория / проекта и попытаюсь запустить php artisan, я получу ошибку:

Mcrypt PHP extension required.

Однако, если я запускаю команду mcrypt из того же каталога, я получаю:

mcrypt: Encrypted data will not be written to a terminal.
Redirect the output instead.
Use the --help parameter for more help.

Что говорит о том, что mcrypt работает. Любой вклад / помощь очень ценится. Я очень близок к тому, чтобы сдаться, я занимаюсь этим часами и ничего не получаю.


Обновление: первая ошибка была устранена.

Ошибка 403 остается; Проверяя логи apache2, я обнаружил эту ошибку:

[Fri Jan 16 09:38:31.855624 2015] [core:error] [pid 5641]
(13)Permission denied: [client [removed]] AH00035: access to / denied
(filesystem path '/root/scheduleify') because search permissions are
missing on a component of the path

1

Решение

Для первой проблемы:

You don't have permission to access / on this server.

Как правило, это проблема с разрешениями. например, root владеет / root / scheduleify и веб-сервером (как правило, www-данные в Ubuntu & Debian) не может прочитать этот каталог.

chown -R www-data: /root/scheduleify

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

Для второй проблемы:

Mcrypt PHP extension required.

можно исправить с помощью:

apt-get install php5-mcrypt

наконец перезапустите Apache.

sudo service apache2 restart

2

Другие решения

Проблема заключалась в том, что я помещал приложение в корневой каталог … Это плохая идея и потребовала бы дополнительной настройки apache.

Переместив проект из корневой папки (root / project) в каталог var / www / html / project и выполнив тот же процесс, описанный в статье, я смог заставить приложение работать!

0

По вопросам рекламы [email protected]