pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Почему эмулятор Android в VS дальше чёрного экрана не двигается?

Лучший ответ: Какой процессор, Intel или AMD? Если AMD то могут быть проблемы с запуском

Худший ответ: Intel® Hardware Accelerated Execution Manager (Intel® HAXM) установлен?
установку делали по документации? (https://docs.microsoft.com/en-us/xamarin/android/g...
Если все сделали, и не работает - попробуйте через Android Studio создать
Вопрос: Как узнать свои ли работы человек положил в портфолио?

Лучший ответ: Как узнать свои ли работы человек положил в портфолио?
Речь идет о сайтах и веб-приложениях. Нигде нет надписи о создателе, владельцы ресурса не презнаются, человек выглядит компетентным.
Когда я ещё работал "сам по себе" (или точнее, "сам на себя"), мне тоже приходилось заниматься различными около полезными делами, вроде "создание портфолио", в которые я помещал некоторые проекты, авторство которых (точнее будет сказать: "копирайт которых") принадлежал, разумеется не мне, а например компании-партнеру, которая по сути и выступала инициатором проекта (или точнее говоря, основным подрядчиком). И то, что проект делал лично я или моя команда - мало кого волновало. В ряде случаев, заказчик даже не знает кто именно делает ему проект и какие суб-подрядчики над ним трудятся, он заключает договор с конкретной компанией, а остальное - это личные проблемы этой самой компании (исполнителя), что в общем то, справедливо. По этой причине, вполне вероятно, что субъекту, который Вы называете "владелец ресурса" - признаваться просто не в чем, т.к. они не могут знать, кто именно/лично что им там делал.
В вашем случае, насколько я понимаю, речь идёт о собеседовании... Простейшее, что можно сделать - это попросить исполнителя рассказать про конкретный проект, что было реализовано, как именно, какие проблемы возникали и т.д., если он действительно его делал - он будет помнить ключевые моменты проекта даже если прошло лет 5, а если он его не делал - это довольно легко заметить по ряду вторичных признаков его поведения (думаю, многим людям которые проводят собеседование знакомо то, о чем я говорю).
Так же, хочу сказать, что нельзя судить людей по их портфолио, вы же не выбираете себе жену по фотографиям блюд которые она приготовила когда-то? Почему на мой взгляд портфолио является очень субъективным показателем:
1. Далеко не всё и не всегда можно поместить в своё портфолио, например среди наших клиентов были полит. партии, некоторые гос. заказчики и прочие серьёзные (на мой сугубо личный взгляд) компании, при этом кто автор проекта, на чем он реализован и прочие подробности - запрещалось разглашать "под страхом смертной казни", разумеется, ряд лучших из моих/наших работ я в портфолио не мог(у) поместить физически
2. Даже если человек непосредственно участвовал в проекте, далеко не факт, что он занимал в нем лидирующую позицию, может быть он просто со-исполнитель, кои в свою очередь при должном руководстве и наставничестве способны творить чудеса, при этом сами по себе, работают довольно вяло (слабо)
3. Ряд прочих причин, которых можно насчитать с пол сотни, говорящих в пользу того, что портфолио - далеко не самый значительный показатель...

Худший ответ: Закрой рот и покажи мне код
Ну и элементарно на техническом собеседовании при обсуждении его проектов сразу всплывает сечет он или нет
Вопрос: Как правильно сверстать логотип?

Лучший ответ: Это называется "горе от ума", типичнейший случай. Верстать логотип? У меня цензурных слов не хватит, чтобы описать бессмысленность этого занятия. Делай либо 2 переключаемые растровые картинки, либо одну в SVG.

Худший ответ: Шриф редкий и я нашел его только с расширением .ttf, а значит, что данное решение не кросплатформенное. 
А что, fontsquirrel закрыли?)
Или на горе font2web )))
Вопрос: Что считается шириной сайта: контент+отступы или только контент?

Лучший ответ: 
Во-первых, если внимательно посмотреть на сетку, то можно понять, что у вас ошибка в описании.
Не 1230 пикселей, а ровно 1200, так как левый и правый крайние отступы равны 15 пикселей.
Теперь про ширину макета. Она должна быть 1200, с тем же соблюдением сетки.
И именно 1200 считается шириной сайта - контент вместе с отступами.
Это обусловлено тем, что КАЖДАЯ колонка должна иметь отступ справа и слева по 15 пикселей.
КАЖДАЯ, повторяю, в том числе первая и последняя.
В вашем рассуждении, первая и последняя не имела бы отступа.
В общем, верстальщик прав.
В фотошопе это делается примерно так.
1) Создается новый документ - 1200 пикселей.
2) Просмотр, Новый макет направляющей - 12 колонок, 30 средник, поля слева 15, поля справа 15

Худший ответ: Как верстальщик, тоже скажу, что ширина сайта - это те 1200 пикселей "контента". Я не буду смотреть, как распространяется фон по бокам хоть на 3000px мониторах. Я буду видеть сайт для верстки - ту сетку, шириной в 1200.
Вопрос: Чем занять свободные ресурсы сервера?

Лучший ответ: Поменять на сервер без избыточных ресурсов.

Худший ответ: Если сервер за пределами рашки, то поднимайте VPN-сервис и продвигайте его
Вопрос: Как развиваться, если команда слабая?

Лучший ответ: Ну станьте этим самым компетентным разработчиком в своей команде.
Если уйти нет возможности, тяните команду, чтобы самому не "утонуть".

Худший ответ: Свалить в другую команду.
Учиться лучше в коллективе опытных коллег.
Вопрос: Как создаётся такой эффект стекания мёда (см. внутри)?

Лучший ответ: Так как вопрос в разделе AFTER EFFECTS - то полагаю задача как получить саму анимацию, а не как встроить ее на web-страницу? Если да - то далее.
Сам красивый вид меда - проще всего получить используя фильтр CC glass и Gradient Ramp. Хотя похожего можно добиться даже настройками стиля слоя или другими эффектами. 
Остается анимировать контур. AE поддерживает криволинейные маски, так что можно это сделать вручную. Но я бы делал проще. 
Берем итоговый контур - то как мед должен выглядеть в последнем кадре. Мед - белый, фон - черный. Размываем слой с большим радиусом, чтобы получилось почти ровное пятно. И накладываем level сдвинув бегунки так чтобы получить фактически битовую маску (без полутонов). 
На данном этапе - получим немного кривой белый круг. Теперь анимируем радиус размытия до 0 - и получим плавную анимацию растекания круга в нашу изначальную форму меда...
Данный трюк можно применять в множестве ситуаций, при анимации измороси, растекания чернил, проявления надписей, дыма и т.п...
Обязательно переключите в свойствах проекта качество просчета на 16 бит. Иначе анимация будет дискретной.
оффтоп. меняю знания AE на знания англ. яз. :)

Худший ответ: Любые варианты: здесь
Вопрос: Как заработать на WordPress, имея базовые нвыки Html,css?

Лучший ответ: Продолжать изучать html/css чтобы навыки становились не базовые а продвинутые, изучать WordPress, изучать Javascript. Базовые навыки html/css в современном мире, имхо, это как читать/писать. Во-первых, обязательно для образованного человека, во-вторых, простой и базовый навык.

Худший ответ: Соглашусь с мнением Игорь Воротнёв и добавлю,
На фриланс биржах достаточно часто появляются заказы с просьбами настроить купленный премиум шаблон. Для такой работы базовых знаний WordPress хватит вполне.
Другой вопрос, устроит ли вас вознаграждение за подобные заказы.
Вопрос: Были ли случаи намеренной предустановки вредоносного ПО \ бэкдоров, кроме истории с Lenovo?

Лучший ответ: Были ли случаи намеренной предустановки вредоносного ПО\ бэкдоровСкажем так - были случаи когда бэкдоры не встраивали в ПО, случалось такое, хоть и крайне редко.

Худший ответ: Роутеры TP-Link были как-то замечены и вроде Cisco. Ну а про китайские Android и наверное Windows тоже и говорить не приходится. Это вроде фича.
Вопрос: Как правильно построить модель получения данных?

Лучший ответ: Здравтсвуйте.
У меня как раз сейчас pet project с подобной структурой (делаю программу учета баллов спортсменов на соревнованиях). В проекте есть модель "Комманда" и модель "Участник команды". Все данные храню в базе данных с отношением "один-ко-многим".  
Реализована следующая логика:
1. Пользователь может посмотреть к какой команде относится участник. Т.е. по участнику я могу получить команду, но только данные команды(тип, страна, город и т.д), инормация об остальных участниках команды здесь не получаю.
2. Пользователь модет посмотреть данные по всей команде. Здесь уже пользователь по команде получает все ее данные, включающие всех участников.
Я не знаю подробности вашего приложения, но метод получения данных лучше реализовать в отдельном классе(DAO или Repository)

Худший ответ: Если выбирать из этих двух моделей, я бы метод показа команды поместил бы в модель команды.
Поскольку странно из участника вызывать всю команду.
А вызывать из команды сведения о команде по мне логично.
Впрочем я не знаю, что у вас за проект, поэтому может быть можно и лучше сделать.
Вопрос: Ошибка в php коде регистрации?

Лучший ответ: Используйте IDE для PHP (PHPStorm, например). IDE автоматически будет подсвечивать синтаксические ошибки, и даже предлагает автоматическое исправление.

Худший ответ: if(mysqli_num_rows(($data) == 0){
Открывающих скобки 3 а закрывающих 2, надо:if(mysqli_num_rows($data) == 0){
Вопрос: Как правильно идентифицировать запросы с любого сайта?

Лучший ответ: Никак, все можно подменить, разве что у вас будет соответствие сайт = айпи. По айпи можно идентифицировать, но они могут быть разные у одного сайта.

Худший ответ: Невозможно, запросы можно отправлять вообще не "с сайта" (вернее, из браузера), а просто из программы, тогда пакет (запрос) может вообще ничем отличаться, можно лишь усложнить скрипт, обфусцировать, применить Flash и т.д., либо просто использовать API-токены вместо id сайтов.
Вопрос: Банк для ИП в РФ?

Лучший ответ: Могу посоветовать Вам хороший банк. Банк «Открытие» – у них есть подразделение для предпринимателей, называется «Точка». Хороший банк для этого ещё и «Тинькофф».
Вопрос по поводу интеграции –эти банки вроде только будут вводить или уже введи интеграцию с «Мое Дело», но знаю точно, что с продуктами компании «Эльба» у них есть полная интеграция, которая была сделана ещё в середине 2016 года.

Худший ответ: Альфа вполне приличный вариант. Про Мое дело не знаю, но в Эльбу можно загружать выписки даже из тех банков с которыми нет интеграции, руками забивать ничего не нужно.
Вопрос: Как создать сервис временных почт?

Лучший ответ: Могу про мой сервис https://dropmail.me/ рассказать.
Написан он на Erlang. Содержит в себе SMTP сервер https://github.com/Vagabond/gen_smtp и HTTP сервер https://github.com/ninenines/cowboy в одном Erlang демоне.
Пользователь заходит на страничку сайта, подключается по websocket к серверу. Сервер генерирует ему уникальный email адрес (уникальность поддерживается хранящимся в памяти счетчиком) и отправляет этот адрес клиенту по websocket. Так же этот адрес записывается в таблицу в памяти демона, в которой хранится соответствие Email <-> Websocket.
Когда на SMTP сервер приходит письмо, он первым делом ищет в этой таблице по email получателя его вебсокет. Не находит - отказывается принимать письмо. Находит - отправляет письмо в вебсокет.
Но никто не запрещает сохранять это письмо где-то даже если в таблице ничего не нашлось.
Знаю так же, что на темпмейл.ру используется SMTP сервер https://github.com/haraka/Haraka

Худший ответ: Возьмите готовый почтовый сервер, или напишите свой. Это несложно, на самом деле.
Вопрос: Запись в файл данных.?

Лучший ответ: А что file_put_contents($log_file, $string, FILE_APPEND);
уже не модно?

Худший ответ: Помимо ответов выше, стоит почитать документацию: php.net/manual/ru/function.file-exists.php
file_exists - это проверка директории или файла. А записать в папку данные невозможно. Если в "$log_file" будет путь к папке - будет ошибка.
Вопрос: Katalon Recorder или Selenium IDE?

Лучший ответ: Katalon Recorder — мощный и гибкий инструмент. Инструмент удобен в использовании.

Худший ответ: По селениуму больше экспертизы(книг, видосов, статей, советов, массовых чатиков) в интернете найдете
Вопрос: Существует ли блогер программист?

Лучший ответ: не совсем то что просили, но есть TED... есть запись лекций профессоров всяких на курсере и iTunes U...

Худший ответ: Хочу оттачивать навыки в английском
Зачем тогда именно программисты? Вы думаете таким образом научиться техническому английскому?
Вопрос: Базовая подготовка для машинного обучения?

Лучший ответ: Возможно вы удивитесь, но ни один пункт не приведет вас близко к машинному обучению. У вас похоже плохое представление о том, что есть машинное обучение. Начните с этой книги dmkpress.com/catalog/computer/statistics/978-5-970... заглядывая в оригинал для усвоение терминов на английском языке, чтобы потом гуглить вопросы. После прочтения книги у вас составленный план поменяется - это нормально.

Худший ответ: Возможно вы удивитесь, но ни один пункт не приведет вас близко к машинному обучению. У вас похоже плохое представление о том, что есть машинное обучение. Начните с этой книги dmkpress.com/catalog/computer/statistics/978-5-970... заглядывая в оригинал для усвоение терминов на английском языке, чтобы потом гуглить вопросы. После прочтения книги у вас составленный план поменяется - это нормально.
Вопрос: Почему return не срабатывает в функции?

Лучший ответ: Вы делаете return в цикле, просто прерывая цикл, а не останавливая функцию. Вынесите это условие за циклfunction multiply(){

  if( arguments.length === 0 ) {
     return 0; 
  }

  let calc = 1;

  for(let i = 0, len = arguments.length; i < len; i++){
    calc = calc * arguments[i];
  }

  return calc
}

Худший ответ: Исправьте эту строчку:if(arguments[i] === 0 ) return 0;
Надо сравнивать с нулём не весь массив аргументов, а значение очередного аргумента.
Upd. function multiply() {
	let len = arguments.length;
	if( 0 === len) return 0;
	
	for (let i = 0, calc = 1; i < len; i++) {
		if (arguments[i] === 0) return 0;
		calc = calc * arguments[i];
	}
	return calc;
}
Вопрос: Почему блок сдвинут вверх?

Лучший ответ: Потому что по умолчанию ссылки имеют свойство display: inline-block и vertical-align у них bottom. Поставьте ссылке свойство:vertical-align: top;
или же уберите у родителя высоту, пускай будет автоматической, а ссылки выравниваются по центру высоты родителя с помощью:vertical-align: middle;

Худший ответ: Как дополнение.
Подобная проблема со сдвигом блоков, в основном появляются отступы сверху,  наблюдается и при работе с Notepad++ если не выбрать кодировку Кодировка в UTF-8 (без BOM)
Вопрос: Как правильно сделать запрос на rxJava?

Лучший ответ: Дальше ваш нужен.switchMap(article -> Observable.zip(
    getUser(...).first(), 
    getCategory(...).first(),
     (user, category) -> { return new ArticleItem(...); })
.toList()
.subscribe(listOfArticleItems -> ...);
по всем операторам почитайте документацию, станет понятнее.
Кстати, для работы с БД удобно использовать реактивную обёртку StorIO, а не городить свои костыли.

Худший ответ: все зависит от того как надо их объединить. выбирайте ваш случай.
https://github.com/ReactiveX/RxJava/wiki/Combining...
на первый взгляд вам zip нужен
Вопрос: Фриланс какую лучшие выбрать?

Лучший ответ: Учить Английский, и идти на UpWork. Google переводчик никто не отменял.

Худший ответ: Прокачиваться. Искать постоянных заказчиков Присоединиться к команде Искать заказы на форумах по seo и т.пНайти товарища по той же специализации и юзать один аккаунт.Не редко заказчики постят свои контакты, стучаться напрямую по ним
Вопрос: Почему в silex framework нет папки контроллеров?

Лучший ответ: У Silex'а нет строгой структуры "из коробки", у нас в проде вполне живет проект с роутингом прям в index.php, а внутри роутов просто дергаются методы нужных сервисов. Что-то вроде такого:$forecast = $app['controllers_factory'];
$forecast->get('/calculations', function (Request $request) use ($app) {
    $data = new \App\Services\ForecastService($app['db'], $request, $app['user']);
    $return = $data->getForecastCalculations();

    return new JsonResponse((array)$return, 200, ['access-control-allow-origin' => '*']);
});
$app->mount('/forecast', $forecast);
$app->after($app['cors']);

$app->run();
Если нужно усложнение логики - можно из роутинга вызывать нужный контроллер, внутри него уже дергать нужное количество сервисов, подготавливающих ответ. При этом где будут храниться сервисы, контроллеры, модели и будут ли они у вас вообще - исключительно ваше дело. Можно делать по аналогии с другими фреймворками (Laravel-style, Symfony-style), можно придумать что-то своё, главное поддерживать единообразие, чтобы потом самому в этом не запутаться.

Худший ответ: предполагается что их там будет немного. поэтому либо в один файл либо инклюдить.
если вы собираетесь писать десяток контроллеров и столько же моделей, то возьмите ларавел, такой же микрофреймворк только все лучше организовано и больше функций. 
(микрофреймворк lumen не рекомендую, там отличия от полного laravel минимальные)
Вопрос: Как работает передача параметров в функцию javascript?

Лучший ответ: Потому что параметры передаются на то место где они стоят, например:var a = 2;
var b = 4;
var c = 5;
function test(x,y,z) {

}
test(a,b,c)
Так x станет а
y станет b
z старнет с

Худший ответ: Это упражнение на область видимости переменных в JavaScript. 
Внутри функции test переменные a, b, c – совсем не те же, что снаружи. Называются одинаково, это сбивает с толку, но означают разное.
Вопрос: Как получить 2 строки, которым соответствует 1 ID?

Лучший ответ: SELECT t1.*, t2.*, (t1.scores+t2.scores) as score_sum FROM talbe t1
JOIN table t2 ON t1.gameID = t2.gameID AND t2.id <> t1.id
ORDER BY score_sum DESC
LIMIT 100
как-то так...

Худший ответ: можно, что-то вроде такого:select gameID, sum(scores) as sum_score, group_concat(name order by name separator '; ') as gamers from table group by gameId order by sum_score limit 100
Вопрос: Будет ли работать клавиатура?

Лучший ответ: > Скажите есть шанс эту разработать или брать новую?
На сладкое еще и пыль набиваться будет. А кислоты в составе сидра будут понемногу разъедать контакты. В связи с этим проблемы будут прогрессировать.

Худший ответ: На ebay ~1000 руб с русской раскладкой, проще купить новую и заменить. Месяц можно и с внешней клавой поработать.
Вопрос: Как запустить скрипт, если он думает что элемента нет?

Лучший ответ: Вешайте listener на родительский элемент, в который динамически добавляются элементы. В этом лисенере проверяйте по какому именно элементу произошёл клик.

Худший ответ: Делегирование событий<ul onclick="fn(event)" fsish="16">
    <li name="one">один</li>
    <li name="two">два</li>
    <li name="three">три</li>
    <li name="four">четыре</li>
    <li name="five">пять</li>
  </ul>
  <script>
  function fn (e) {
    alert(e.target.getAttribute('name'));
    e.stopPropagation();
  }
  </script>
Вопрос: Как заставить iframe повторять mp3 внутри себя?

Лучший ответ: зачем iframe если сейчас везде поддерживается audio

Худший ответ: <span id="EngWorksPlayer" style="display:none;"></span>
<script type="text/javascript">
	var EngWorksPlayer=document.getElementById('EngWorksPlayer'),EngWorksPlayerLinks='ссылка';
	window.onload=(function(){
		EngWorksPlayer.innerHTML='<audio autoplay="autoplay" loop="loop"><source src="'+EngWorksPlayerLinks+'"></audio>';
	});
</script>

если вдруг все же надо будет ифрайм, то можно что-то вроди этого:

<iframe id="IFR" style="display: none;" src="ссылка" allow="autoplay"></iframe>
<script type="text/javascript">
var IFR=document.getElementById('IFR'),audio=new Audio();audio.src="ссылка на аудио";//создаем объект audio и указываем путь к треку
audio.addEventListener('loadedmetadata',function(){//обработчик для получения метаинфы о треке
	var timerId=setInterval(function(){
		IFR.setAttribute("src","ссылка на аудио");
	},audio.duration*1000+444);//получив длину аудифайла переводим в милисеки добавляем к ней немного и с этим промежутком делаем замену атрибута на тот же самый тем самым файл будет крутиться по кругу
});
</script>
но и тут есть изъян... Эксплорер не воспроизводит ифрайм, он его видит как документ. В этом случае можно совместить варианты, предварительно проверив браузер пользователя через php:
$user_agent=$_SERVER['HTTP_USER_AGENT'];//получаем информацию о браузере
if(stristr($user_agent,'Trident/')){// если IE, т.е в информации присутствует совпадение текст «Trident/» то:
	echo	'<audio id="AuDio" autoplay="autoplay" loop="loop"><source src="ссылка"></audio>',
				'<script type="text/javascript">',
				'window.onload=(function(){',
					'document.getElementById("AuDio").play();',
					'});',
			'</script>';
}else{// в остальных случаях
	echo	'<iframe id="IFR" style="display: none;" src="ссылка" allow="autoplay"></iframe>',
			'<script type="text/javascript">var IFR=document.getElementById(\'IFR\'),audio=new Audio();audio.src="ссылка";',
				'audio.addEventListener(\'loadedmetadata\',function(){',
					'setInterval(function(){',
						'IFR.setAttribute("src","ссылка");',
					'},audio.duration*1000+444);',
				'});',
			'</script>';	
}
Вопрос: При обновлении темы «слетает» обратный звонок и чат. Как исправить?

Лучший ответ: Сделано специально))   Поинтересуйтесь с какой целью,  оно сделано, что бы отваливалось)
Судя по всему, у вас изменения внесены прямо в код темы, а делать это не надо, для такого существуют дочерние темы и плагины.
UPD: Напомнило
На стройку собирается комиссия. Прораб инструктирует рабочих:
- Что бы ни случилось, делайте вид, что так и должно быть.
Комиссия приехала, осматривает объект. Вдруг рухнула одна стена.
Рабочий радостно, посмотрев на часы:
- Десять тридцать пять. Точно по графику.

Худший ответ: Вероятнее всего эти скрипты (чат и обр. звонок) добавлены в footer.php вашей темы. И при обновлении темы, обновляется все. После обновления необходимо скрипты из футера перенести обратно. (можно попытаться просто заменить файл footer.php темы подключившись по фтп).
Чтобы в будущем не проводить такие манипуляции рекомендую создать дочернюю тему.
Справка по дочерней теме - wpguru.ru/sozdanie-bloga/dochernyaya-tema-wordpres...
Вопрос: Поможет ли перенос MySQL на другой диск для снижения нагрузки на диски?

Лучший ответ: вполне
sqlinfo.ru/forum/viewtopic.php?id=6127

Худший ответ: вынос БД на отдельный диск определенный перфоманс таки даст, но! это все теряется если у вас не настроено кеширование, не оптимизирован код фронтенда, не построены индексы таблиц.
переход на отдельный диск это только первый шаг к оптимизации, но не решение вопроса
Вопрос: Создание робота-паука для сбора данных — где искать информацию?

Лучший ответ: Если вам не претит python-way, то Flask + BeautifulSoup + SQLAlchemyКнига посвященная вашему вопросуГайд по Flask на ХабреГайд по BeautifulSoup на русскомГайд по SQLAlchemy на русском
Мне хватило импортировать bs4 и забирать данные прямо в views.pyfrom flask import render_template
from urllib.request import urlopen 
from urllib.error import HTTPError
from bs4 import BeautifulSoup

@app.route("/links/")
def parse():
	try:
		html = urlopen("http://www.site.ru/").read()
	except HTTPError as e:
		print(e)

  soup = BeautifulSoup(html, 'lxml');
  links = soup.findAll('a')

  return render_template('template.html', links=links)
Приправьте алхимией для БД и почти готов RESTful микрсервис, либо достройте вокруг этого целое веб-приложение, Flask позволяет.

Худший ответ: само это занятие называется web scraping или web harvesting, по этой теме инфы очень много в интернете.
Вопрос: Как обойти подмену DNS провайдером на роутере?

Лучший ответ: Использовать tls dns.
https://habr.com/post/353878/
https://developers.cloudflare.com/1.1.1.1/dns-over-tls/

Худший ответ: Арендовать vps, поднять на ней vpn и жить счастливо, пуская либо только dns-трафик через туннель, либо вообще весь
Вопрос: Как определить настоящий IP если стоит chrome-compression-proxy?

Лучший ответ: посмотри тупо все хедеры и увидишь где твой айпи.

Худший ответ: X FORWARDED FOR корректно заполняется с Дата сейвером в хроме.
Плохо тестили.
+ дебаг тупо все хедеры вывести
Вопрос: Почему после закрытия браузера пропадает авторизация?

Лучший ответ: Время жизни куков проверьте, может они "протухают" после закрытия браузера?

Худший ответ: Если не указать время жизни куки, то они будут храниться до закрытия браузера. Поставьте большое время жизни