server reached MaxClients setting, consider raising the MaxClients setting
Во как. Это исчерпан лимит подключений. А если в логах на отдачу аттача пусто (точнее пусто не может быть, в access должна быть нормальная строка отдачи файла), то нужно посмотреть на сетевые проблемы с сервером, а это уже не проблема этого топика. И полезно полистать логи самого сервера, от чего он страдает.
Заходишь, смотришь: кучу анонимов с разных IP смотрят один и тот же аттач. переносишь его или пост с ним – и нагрузка на сервак падает.
Проблема растет с двух мест.
Первая - булка не очень хорошо работает с большим числом аттачей, это кушает ресурсы. Если аттачи все равно видны гостям, то крайне рекомендую взять на vbsupport у керка скрипт хостинга изображений (сойдет и бесплатная версия) и хранить изображения в нем, отдавая картинки впереди стоящим перед апачем nginx. Это здорово снизит нагрузку на апач с обвязкой и на сервер в целом.
Вторая проблема - это доступность аттачей для гостей. Кто-то берет у тебя картинку (ссылку на твой аттач) и постит на популярном ресурсе. С каждым просмотром того сайта, дергается твой форум (идет проверка прав, отдача файла средствами php) - отсюда и нагрузка. Лечение тут два: либо закрывать аттачи от гостей, либо проверять reffer при отдаче (еще этот способ известен как хотлинк или антихотлинк и вполне красиво реализуется средствами самого сервера).
Реши эти две взаимосвязанные задачи и в перспективе снизишь нагрузку на сервер,
А что до
Assigning the return value of new by reference is deprecated in
это просто ругань на устаревший синтаксис, под 5.3 и выше это будет вот так
PHP:
$upload = new vB_Upload_Attachment($vbulletin);
Т.е. убираем &. Все таки 3.8.5 разрабатывалась еще до этой ветки php, там подправить нужно будет в нескольких местах.