Логотип   Простое и понятное управление
  Уникальные возможности по настройке
  Open Server скачали уже 1 021 953 раза!

Форум

Добро пожаловать, Гость!

Не правильное определение ядра windows

Вопросы по работе с Apache, Nginx, PHP, MySQL, Sendmail и т.д.
SX2
Сообщения: 14
C нами: 3 года 4 мес

Непрочитанное сообщение SX2 » 17 ноя 2014, 16:36

Добрый день! Подскажите почему php определяет Windows 8.1 и Windows server 2012R2? как:
System Windows NT 6.2 build 9200
вместо
System Windows NT 6.3 build 9600

Проверял на всех версиях php 5.2. 5.3. 5.4. 5.5

1.jpg
(74.31 КБ) 0 скачиваний

2.jpg

Аватара пользователя
Максим
Сообщения: 4877
C нами: 5 лет 11 мес
Контакты:

Непрочитанное сообщение Максим » 17 ноя 2014, 16:56

Вы наверное включили запуск в режиме совместимости с Windows 8 в свойствах файла Open Server.exe Почему и зачем вы это сделали - вам виднее. PHP тут не виноват.

SX2
Сообщения: 14
C нами: 3 года 4 мес

Непрочитанное сообщение SX2 » 17 ноя 2014, 17:01

Не включал я его в режиме совместимости, обычно установил и запустил!

Аватара пользователя
Максим
Сообщения: 4877
C нами: 5 лет 11 мес
Контакты:

Непрочитанное сообщение Максим » 17 ноя 2014, 17:03

SX2 писал(а):Не включал я его в режиме совместимости, обычно установил и запустил!


Указанное вами несоответствие может быть только в том случае, если включали :) Проверьте, правая кнопка на файле Open Server.exe - свойства:

Изображение


Эта галочка (первая сверху) должна быть отключена.

SX2
Сообщения: 14
C нами: 3 года 4 мес

Непрочитанное сообщение SX2 » 17 ноя 2014, 17:06

Изображение

Аватара пользователя
Максим
Сообщения: 4877
C нами: 5 лет 11 мес
Контакты:

Непрочитанное сообщение Максим » 17 ноя 2014, 17:23

Всё спасибо, уже ничего не нужно. Я сам проверил в виртуальной машине. Действительно это баг PHP. Просто гораздо чаще подобные ошибки возникают из-за запуска в режиме совместимости, поэтому сразу про него и подумал.

По итогу проверки - все старые версии PHP вообще не определяют что это Windows 8 или 8.1, последняя версия PHP 5.5 может определить что это Windows 8 билд 9200 но не определяет 8.1, видимо эта проблема исправлена в PHP 5.6 (сможете проверите когда выйдет Open Server с этим модулем, думаю на этой неделе).

Так что по всей видимости PHP берет данные о версии Windows не напрямую из системы, а определяет своими корявыми алгоритмами. Что из этого получается вы сами видите.

SX2
Сообщения: 14
C нами: 3 года 4 мес

Непрочитанное сообщение SX2 » 17 ноя 2014, 17:26

PHP 5.2 тоже определяет как Windows NT 6.2 build 9200

Аватара пользователя
Максим
Сообщения: 4877
C нами: 5 лет 11 мес
Контакты:

Непрочитанное сообщение Максим » 17 ноя 2014, 17:32

SX2 писал(а):PHP 5.2 тоже определяет как Windows NT 6.2 build 9200


Написал выше - ждите обновления. PHP 5.2 самая старая версия PHP что есть в Open Server, у меня в виртуальной машине она тоже ничего не определяет, пишет 9200. Более новые версии PHP добавляют к этому Unknown Windows version. Только 5.5 определяет редакцию Windows 8 (Business edition), но всё равно пишет Windows 8 и билд 9200. Так что без обновления PHP тут никак, хотя и там не факт что будет правильно работать.

SX2
Сообщения: 14
C нами: 3 года 4 мес

Непрочитанное сообщение SX2 » 17 ноя 2014, 17:35

Изображение


PHP 5.2 хоть и самая старая, зато самая быстрая! (Лично для меня)

Аватара пользователя
Максим
Сообщения: 4877
C нами: 5 лет 11 мес
Контакты:

Непрочитанное сообщение Максим » 17 ноя 2014, 17:42

SX2, PHP 5.2 крайне медленная версия, как бы вы ни думали. Чем новее версия PHP, тем быстрее она работает, это факт ;)


Вернуться в «Модули и инструменты»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей