Comments 18
Полезнее было придумать для студии что-то более подходящее, чем xampp вместо «розыгрыша».
Я не сомневаюсь, что здесь собрались серьёзные люди. И серьёзные проекты у меня тоже есть. Например, «Виртуальные классы» (viclass.ru), описание которого Хабр отклонил под предлогом того, что это реклама.
А этот пост из категории «Айтишники шутят» без претензии на серьёзность.
Только суровые админы почему-то считают этот юмор чёрным.
Немного не догнал, а что мешает поднять туннель до офиса и прописать в hosts:

IP-веб_сервера_в_офисе kremlin.ru

??
Я тоже не совсем понимаю, что вы имеете в виду.
Вы, очевидно, попадёте на сайт президента, которому я грешным делом, обеспечил сегодня повышенную популярность :)
Вы шутите? :)
Если цель это открыть ваш сайт на любом домене, то именно так можно и поступить, имея доступ во внутреннюю сеть. Если внутренняя сеть имеет публичный айпи — еще проще…
Нет, я совршенно серьёзно.
Вот вы сидите в кафе и открываете в браузере kremlin.ru/бла-бла-бла
И что происходит дальше?
Если я предварительно в /etc/hosts (да, я на линуксе работаю и мне не нужен костыль в виде PuTTy) внес IP офисного компа (на котором по легенде висит некий тестовый сайт) и если у меня установлен VPN к офису (т.е. IP офисных компов доступны мне на локали), то откроется «левый» сайт на известном домене.

Но так я могу любой сайт «открывать»… А если не требуется открывать именно сайт для разработчика, то и VPN не нужен — на 127.0.0.1 завести нужный домен и все — готово представление…

P.S. Вообще, у вас условие надуманное. Как и аргументация. Ведь и кафе может иметь ограниченный Wi-Fi, где только 80-й и 443-й порты открыты (и тут SSH не поможет, хорошо если вы предусмотрительно повесили OpenVPN на 443-й порт, а если нет?), и «целевой» сайт может иметь сертификат, который вместо «зеленого замочка» покажет перечеркнутый красным ;)

P.P.S. Не для холивара, но в виду того что пример на Windows, есть мысль что вы излишне восторгаетесь будничными для Linux-пользователя (и уж тем более — администратора) вещами… Описали бы вы тройной вложенный SSH-туннель, netcat и т.п…
В том то и дело, что речь идёт о среднестатистических ноутбуках и рабочих станциях, которые на 95% на виндах, где никто заморачиваться с созданием VPN для этого не будет.

А при наличии Linux всё, конечно, упрощается. Я как раз сегодня развлекался пропусканием SSH-VPN по обратному туннелю SSH и в этом смысле возможности Linux просто неограничены.

Что касается открытых/закрытых портов и всяких других условностей, то невозможно всё предусмотреть в этой жизни. И про HTTPS я намеренно не писал, но большинство сайтов в разработке всё-таки пока на HTTP. В статье опущены все эти частности — показан принцип.

Сопоставить доменному имени клон loopbackа типа 127.0.0.5 не получится. Винда, по крайней мере, подобные сопоставления почему-то игнорирует, хотя по самому IP сайт откроется. Поэтому я и предложил простой способ установки дополнительного адаптера, который минуты 3 занимает. А если у вас VMware или VirtualBox, то всё уже под руками.

Вобщем, ничем я не восторгаюсь, я просто показал фокус для Windows, который мне лично не кажется банальным. И, честно говоря, я очень озадачен тем, что меня опустили ниже плинтуса.
Не кажется банальным этот фокус исключительно Вам. Большинству посетителей хабра, сфера интересов которых лежит в этой области, такой «фокус» может показаться небанальным только из-за того, что подобная глупость просто никому не придёт в голову.
Ну вот не вижу я ничего смешного, чтобы открыть свой сайт якобы на постороннем домене. И, похоже, не только я.

Что же касается нюансов технической реализации — то тут есть миллион вариантов, из которых Ваш отнюдь не самый изящный.
Навскидку:
— прописать в hosts алиасы на 127.0.0.1 и поднять веб-сервер на своём ноутбуке. Я не знаю, почему у Вас «винда подобные сопоставления игнорирует», у меня прекрасно работает и я этой схемой неоднократно пользовался, когда приходилось подпиливать чужие сайты с hard-coded ссылками.

— если всё же не получается на локалхосте — поднимите второй адрес на обычном сетевом интерфейсе и сошлитесь на него. Это умеет даже винда, только надо нажать кнопочку «advanced».

— поднять на своём ноутбуке любую систему виртуализации, линукс с вебсервером в виртуалке, алиас в hosts и поехали. Это может показаться немного замороченным, но я знаю огромное количество веб-разработчиков, которые эту связку держат в качестве рабочей: это позволяет работать хоть в самолёте, смотреть разрабатываемый сайт с винды в любом нужном браузере, при этом не заморачиваясь разворачиванием на ней веб-сервера (да и не всегда конфигурацию того же nginx можно смоделировать под вендозе).

Ну и ещё миллион способов, включая локальный DNS-сервер и так далее. Вариантов масса, вопрос только в одном: Вы точно уверены, что это — смешно?
Начнём с того, что если Вам эта заметка кажется банальной, то она просто не для Вас.
В вашем комментарии ключевая фраза «Ну вот не вижу я ничего смешного».
Возможно другие думают иначе и это статья для них.

Что касается изящества, то вопрос о том, что проще — «поднять вебсервер», «поднять систему виртуализации» или запустить PuTTY, тем более, если это не ваш личный компьютер, является риторическим.

Интерфейс в альтернативной конфигурации будет работать только в том случае, если не работает основной по DHCP. Как вы будете использовать этот альтернативный интерфейс, когда работает основной, я не знаю.

Неработоспособность сопоставления локальных адресов доменным именам — это проблема, в которой мне было лень разбираться. Я просто понял, что это ненадёжно и предложил вариант с дополнительным интерфейсом, который работоспособен на 100%.

А вообще мне просто становится смешно — здесь на хабре я чувствую себя провинившимся мальчишкой в кабинете директора школы, которому педсовет строго выговаривает:
— Как ты мог сморозить такую глупость в уважаемом обществе?! И даже если решил сморозить, то почему выбрал именно этот вариант из миллиона других?!

И я отвечу — я имею право на подобные глупости, ибо если бы они были таковыми, то их бы не публиковали на хабре. И из миллиона я решил осветить именно МОЙ вариант, не претендуя на то, что другие невозможны.
Так hosts приоритетней, чем DNS. Изменить его и все.

В винде правите C:\Windows\System32\drivers\etc\hosts.
В линуксах /etc/hosts

Постоянно пользуюсь в разработке чтобы что-либо проверить перед деплоем на продакшен.
Я думаю, что проблема использования hosts во всей этой истории в том, что виндовая функция DnsQuery, в которую приходят все способы резолва имени (кроме самописной реализации на сокетах), имеет флаг DNS_QUERY_NO_HOSTS_FILE — который поддерживается еще с XP и запрещает резолвить из hosts. Довольно много программ использует его если не постоянно, то при недоверии к ответу.
А такая специализация в профиле у вас появилась после того, как проделали эту шутку? ;)
Заббикс выгядит так же, как и обычный сайт.
Просто под руками оказался на момент написания статьи.
Тот редкий случай, когда можно воочию наблюдать легендарный, возведённый в абсолют в огромном количестве баек о хабраюзерах снобизм. Не понимаю, зачем вы накинулись на парнишку-то? Ну он пошутил, да. Ну вам не смешно, да. Ну вы накидали более годных с вашей точки зрения решений. Но минусовать его за свободомыслие — это уже некоторый симптом.

PS: лично мне как не специалисту было полезно и познавательно прочесть и сам пост автора, и технический разбор неточностей предложенной им реализацией в комментариях местных старожилов. Спасибо, Хабр.
Only those users with full accounts are able to leave comments. Log in, please.