Отключите в php.ini вывод ошибок и предупреждений в браузер. По всей видимости у вас выводятся какие-нибудь warning или notice (см. исходный код страницы), поэтому header() уже не будет срабатывать.
Пытаются зайти на самбу, возможно прогоняли какие-нить эксплоиты, вот она и упала. Не пользуетесь - удаляйте. Вообще это правило номер 1 - на сервере должны работать только те программы, которыми пользуетесь. Неиспользуемые сервисы надо отключать или блокировать к ним доступ.
А зачем вам на сервере вообще samba? У вас 445 и 139 порты наружу открыты?
UTF-8 файл нельзя разбивать на части, т.к. буквы кодируются переменным числом символов и возможна потеря "на стыке" файлов.
iconv всё сделает как надо.
Вам нужно через nginx проксировать, а не через iptables. Nginx добавит нужные заголовки с адресом пользователя.
Переименуйте файл wp-login.php в wp-mysupersecretlogin.php и всего делов.
Вроде-бы нет, там только фиксированные блоки.
ТС, RTFM: http://www.php.net/manual/ru/language.types.string.php#language.types.string.parsing.complex
сами фотографировали?
Наверное, вирус у вас или что-то в этом роде, какой нибудь тулбар