Я собираюсь использовать каркас Laravel (v5.7).Недавно я изменил свой корневой документ и виртуальный хост следующим образом (цель состояла в том, чтобы просто не показывать «public» в URL):
Корень документа:
DocumentRoot "${INSTALL_DIR}/www/laravel/public"
<Directory "${INSTALL_DIR}/www/laravel/public/">
Options +Indexes +FollowSymLinks +Multiviews
AllowOverride all
Require local
</Directory>
Виртуальный хост:
<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot "${INSTALL_DIR}/www/laravel/public"
<Directory "${INSTALL_DIR}/www/laravel/public/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>
</VirtualHost>
Как только это было сделано, мои файлы CSS и JS не указывали на правильное место (я думал, что это нормально).Я заглянул в документацию по laravel, но я начал путаться в правильном способе создания URL для файлов css и js в моем проекте.
В Laravel есть разные помощники для генерации URL (такие как url () и asset ()) и другие помощники, указывающие на папки (base_path (), public_path (), resource_path ()).
Я также искал в Google об этом, и я стал еще более сбитым с толку, потому что многие люди используют помощник по ресурсам для создания URL-адресов файлов, которые находятся в общей папке (не в папке ресурсов).Мои вопросы следующие:
Если мои файлы css и js находятся в общедоступной папке (public / js и public css), что является правильным способом генерирования этих URL, как толькокорневая папка документа и виртуальный хост изменили папку для просмотра?
Должен ли я использовать помощник ресурсов или URL-помощник для их создания?
Могу ли я использовать комбинацию помощников, чтобы сделать это?Например: url (public_path ('css / style.css'))
PD: мои «собственные помощники» для вас: в обоих случаях выведите asset () и url ()то же самое: