Недавно я закончил API в Symfony 4 и хотел развернуть его на Elastic Beanstalk AWS для производственного тестирования. Однако помимо возможности получить доступ к приветствию Symfony 4 по умолчанию в index.php Страница по умолчанию Symfony
Я не могу перейти к любой другой логике. Например, при попытке использовать / note / view, который работает в локальной среде заметка / просмотр на местном
Меня встречают «Неопределенный индекс / примечание / представление не существует» в среде EB. Почти как мои маршруты. Ямл не загружен.
Любой совет будет принята с благодарностью! Заранее спасибо!
Убедитесь, что у вас есть .htaccess
файл в вашем public
каталог (по крайней мере, на вашем экземпляре EC2 — тот, который создает EB)
Тем не менее, вашему локальному компьютеру это может не понадобиться (например, nginx), но EB PHP поставляется с apache из коробки. Вы должны убедиться, что ваш код будет работать и на Apache.
Просто для проверки этой теории, доступ к вашему экземпляру EC2, который создан EB (см. Ниже, если вы не знаете, как);
cd /var/app/current/public
~ nano .htaccess
Вставьте содержимое ниже в файл;
`
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
<IfModule !mod_rewrite.c>
<IfModule mod_alias.c>
RedirectMatch 302 ^/$ /index.php/
</IfModule>
</IfModule>
Обратите внимание, что это просто базовая перезапись apache для проверки этой теории. Вы можете добавить намного больше к этому файлу в зависимости от потребностей вашего проекта.
sudo service httpd restart
Альтернативно вместо cd /var/app/current/public
Вы могли бы сделать cd /var/www/html/public
как это символическая ссылка на /var/app/current/public
Как получить доступ к EB сгенерированному экземпляру EC2
Это займет некоторое время, прежде чем вы сможете войти.
PS Конечно, одна из основных идей EBS заключается в том, что вам не нужно использовать SSH в своем экземпляре. Однако это просто для проверки теории, и иногда с AWS вам нужно идти по следу & стиль ошибки. Я не знаю ни настройки этого приложения, ни всей установки с EBS и ее рабочего процесса. Если это решит вашу проблему, вы можете просто включить .htaccess
в ваш проект, и вы готовы идти.
Других решений пока нет …