После установки Windows 8 сначала не было никаких проблем с работой виртуального сервера на базе пакета Денвер. Но счастье мое продлилось не долго. На следящее утро Denwer отказался запускаться на моей новенькой Windows 8, сославшись на какую-то ошибку в WinSock2 API. Распознать саму ошибку доподлинно у меня не получилось из-за того, что написано все в консоли крякозябрами.
В итоге сервер рухнул, срочная работа застряла. Тратить лишнее время не хочется.
Вероятные причины отказа Denwer на Windows 8
Аналогичная проблема с WinSock2 API у меня один раз возникла при работе на машине под управлением Windows 7. Тогда я пытался найти решение, но пришлось в итоге действовать радикально – переустанавливать операционную систему со всеми вытикающими.
Как вы понимаете, переустанавливать Windows в этот раз мне совсем не хотелось (ну не гоже это – каждый сносить стабильно работающую систему и тратить целый день на установку софта и настройку всех необходимых плюшек).
Поэтому в этот раз я 2 дня гуглил на предмет решения таинственной проблемы с WinSock2 API. Решений нашлось тьма, но ни одно из них мне не помогло. Единственный вывод, который я сделал – у меня отказывался запускаться Apache. Перенастройка портов не помогла.
Запуск Denwer на Windows 8: решение 1 (дохлый номер)
Переустановка самого Denwer не помогла (кстати, в прошлый раз из-за этой ошибки с WinSock2 API я потерял базы данных от всех своих наработок). Я решил, что в очередной раз (2 подобных случая уже намекают на нехороший тренд) лишиться виртуального сервера мне совсем не улыбается.
Запуск Denwer на Windows 8: решение 2 (не наш метод)
Поэтому я установил последнюю версию Virtualbox и загнал в него древнюю и ненавистную мне Windows XP (места занимает мало и ресурсов больших от виртуальной машины не требует). Настроил на виртуальной машине все, как привык.
Раньше мне приходилось работать со связкой своей любимой виртуальной машины на базе Virtualbox и виртуального сервера на базе Денвера. Удобство и скорость работы не на высоте, конечно. Посидев часок, я понял, что постоянно загонять себя в рамки мне не хочется.
Вывод: решение по установке виртуального сервера на виртуальную машину жизнеспособно, но кайфа от такой работы не испытываешь. Хотя в случаях, когда приходится работать на физической машине с ущемленными правами юзера а не привычным комфортом админа Windows-машины, этот вариант остается, пожалуй, единственным возможным.
Запуск Denwer на Windows 8: решение 3 (долго и нудно)
Восстановить прежнее удобство работы можно было попробовать путем ручной установки с последующей самостоятельной настройки PHP, MSQL и Apache. Долго, муторно и не известно, что в итоге получится (не факт, что в первый раз получится нормально все установить и настроить).
Запуск Denwer на Windows 8: решение 4 (быстро и удобно)
После всех мучений я решил попробовать установить другой виртуальный сервер. Согласитесь, ну не сошелся свет клином на одном пакете Denwer?! Погуглив минут пятнадцать, я остановил свой выбор на Xampp.
Скачал дистрибутив, запустил экзешник и стал ждать. Устанавливался Xampp довольно долго, но сам процесс установки оказался намного проще, чем у Денвера (выбрал в графическом интерфейсе расположение корневой директории и все!).
Xampp работает без виртуального диска. Вместо трех иконок Денвера на рабочем столе поселилась одна иконка панели управления Xampp. Запуск MSQL и Apache производится отдельными кнопочками в симпатичном окошке.
Правда, Apache опять отказался работать. Решил проблему переназначение порта с 80 на 888. Для этого нужно открыть файл httpd.conf (открыть файл можно, кликнув по кнопке «Config» напротив MySQl в панели управления Xampp).
Далее ищем строку, где написано
Listen 80
И меняем все строки, связанные с 80-м портом на вот такие:
#Listen 0.0.0.0:888
#Listen [::]:888
Listen 888
Все. Теперь запускаем Apache и набираем адресной строке браузера
http://localhost:888/xampp/
Тут все интуитивно понятно, и привычному человеку не составит труда создать базу данных в phpMyAdmin. Загружать исходники каталог с исходниками сайта нужно в папку
xampp/htdocs
а корневой директории Xampp. В мое случае полный адрес первого сайта выглядел так:
E:/www/xammp/xampp/htdocs/blogfreo
где
E:/www/xammp/
это расположение корневого каталога, в который я установил Xampp, а
/blogfreo
это каталог, в который я загрузил исходники сайта.
Полюбоваться на на свое творение и продолжить работу я теперь могу, набрав в браузере адрес
http://localhost:888/blogfreo
На этом все. Надеюсь, статья окажется вам полезной, и в случае ЧП с WinSock2 API на Denwer вы сэкономите пару суток личного времени