Ответ на этот вопрос заключается в том, что использовалось неправильное развертывание для производственного сервера, которое пыталось указать на папку «public» вместо того, чтобы находить общедоступные файлы в public_html.
После развертывания в соответствии с дляв этом посте , конечно, относительные пути работают одинаково на серверах разработки и производства.
Единственное отличие заключается в Шаг 5 для Laravel 5.8 в файле server.php
,
Изменить
if ($uri !== '/' && file_exists(__DIR__.'/public'.$uri)) {
return false;
}
На
if ($uri !== '/' && file_exists(__DIR__.'/public_html'.$uri)) {
return false;
}
Относительные пути, такие как
<img src="img/logo.png">
вкллюбой сервер работает одинаково.
К сожалению, документы Laravel не вдавались в подробности этого метода развертывания, так как я подозреваю, что существует множество разработчиков, желающих развернуть на общих серверах хотя бы для целей тестирования.