безопасно.
люди, использующие фреймворки тупо для синтаксиса, а не используя их средства (query builder или модели? не, не слышал) – вообще бессмертные.
правда, недолго.
на одних проектах вообще не использую, просто заранее тяжелые выборки загоняю в кэш.
на других – вообще со старта. ибо много сырых данных, обновляющихся каждый день, а распихивать их по моделям нет ни смысла, ни необходимости (данные только читаются).
в третьих - там, где не хватает возможностей и надо хитрить.
в общем: все зависит, универсального ответа нет.
ну и стоит отдельно определиться, что подразумевается под сырыми запросами: квери-билдер или прямой доступ к базе. последнее я практически не использую.
упарываться по безопасности и давать возможность видеть пароли открытым текстом - противоречащие друг другу задачи на общем уровне.
на продвинутом уровне это вполне решается шифрованием, если способны обеспечить безопасность ключа.
но при подобной постановке вопроса в этом есть обоснованные сомнения.
это скрин не ларавел, а вашего кода.
public - это document_root (если, конечно, настроено так, как дOлжно), корень того, что может быть доступно публично. совершенно естественно, что при попытке вылезть за его пределы, получается не то, что ожидается.
решение: перенос ресурсов в публично доступное место, и исправление их адресов.