не могу не согласиться с Nc_Soft .
по хорошему нужно написать ручками логичный запрос - сначала по русски, потом на sql. потом почитать доки laravel на предмет выполнения raw sql запроса.
если не хотите отказываться от ооп здесь (имхо это ужасно!) - то хотя бы сделайте explain запроса (но там наверняка будет совершенно нечитаемая жесть) - как минимум постройте ключи для всех join ов. (нужны ключи по полям второй таблицы, с которой склеивают ) - можно почитать про mysql nested loops или глянуть www.youtube.com/watch?v=39e1vAGD3hg.
упрек не засчитан. вы считаете, слишком сложно разобраться в днс ? имхо, в общих чертах это довольно просто. ТС для успешного разворачивания сайта нужно всего то нужно научиться прописывать ns запись типа A и получить некоторое представление о хостингах.
+ есть интересный прием - если есть рабочий grub то можно бутнуться с iso архива используя loopback - неплохо описана здесь https://habrahabr.ru/post/118472/
это интересно! то есть убираю автоинкримент с id , при инсертах явно указываю поле id = crc32(url), при селектах проверяю совпадение url только с crc32. верно? совпадение по полю url можно не проверять так как это первичный ключ, верно? получается, при коллизии crc32 я просто не смогу сделать инсерт в таблицу из-за первичного ключа и получу экспешн без ignore или тихий discard строки с использованием ignore?
id в этой таблице мне нужен для связей моделей в orm
зачем именно автоинкремент? не знаю, не думал об этом. так что можно сказать он у меня по дефолту. а есть альтернативы?