Вопрос

Я установил PHP5.3, MySQL5.1 и IIS7 в Windows 7, но php не хочет работать с MySQL.Я предполагаю, что это ошибка конфигурации или неполная установка с моей стороны.

  1. MySQL5.1 работает
  2. PHP5.3 работает, phpinfo() показывает информацию и что я включил MySQL
  3. IIS настроен и использует fastCgiModule для запуска PHP.
  4. IIS регистрирует обновления php.ini
  5. порт 3306 свободен от брандмауэра и открыт для всего мира
  6. php.ini настроен правильно
  7. Я добавил c:\php в PATH системы Windows.

Раньше я помню, как перемещал файл libmysql.dll в System32, но не похоже, что он поставляется с php5.3.1, поскольку драйвер теперь встроен. http://us3.php.net/manual/en/mysqlnd.install.php.

(Это доставляло мне столько хлопот, что я документировал свои выводы в своем блоге, как http://inteldesigner.com/2010/code/having-problems-getting-php5-3-to-work-with-mysql5-1 )

НУЖДАТЬСЯ:

  1. Мне нужно установить PHP вручную, я не хочу использовать быстрый установщик или более старую версию.
  2. Мне нужно заставить PHP5.3 работать с MySQL5.1, чтобы я мог установить Wordpress2.9 и Drupal7a.

Любые ссылки или предложения были бы замечательными, я уже все сделал на веб-сайте iis, ничего не работает.Я предполагаю, что они не обновили новое программное обеспечение.

ОШИБКИ/РЕШЕНИЕ:

Решение здесь: http://bugs.php.net/bug.php?id=50172 спасибо, зайдите на don.raman на форумах iis.net http://forums.iis.net/p/1164911/1933894.aspx

СИМПТОМЫ:

PHP-функция mysql_connect() в связке с php5.3 блокирует сервер и возвращает ошибку 500.(проблема связана с IPv6, см. ссылку выше)

ТЕСТОВЫЙ КОД:

<?php
    $con = mysql_connect("localhost","root","***");
    if (!$con)
      {
      die('Could not connect: ' . mysql_error());
      }

    // some code

    mysql_close($con);
    ?> 

ОШИБКИ:

Из браузера:

HTTP Error 500.0 - Internal Server Error
C:\php\php-cgi.exe - The FastCGI process exceeded configured activity timeout

Когда я бегу php -f c:\public_html\index.php из командной строки я получил:

PHP Warning:  mysql_connect(): [2002] A connection attempt failed because the co
nnected party did not  (trying to connect via tcp://localhost:3306) in C:\public
_html\index.php on line 10

Warning: mysql_connect(): [2002] A connection attempt failed because the connect
ed party did not  (trying to connect via tcp://localhost:3306) in C:\public_html
\index.php on line 10
PHP Warning:  mysql_connect(): A connection attempt failed because the connected
 party did not properly respond after a period of time, or established connectio
n failed because connected host has failed to respond.
 in C:\public_html\index.php on line 10

Warning: mysql_connect(): A connection attempt failed because the connected part
y did not properly respond after a period of time, or established connection fai
led because connected host has failed to respond.
 in C:\public_html\index.php on line 10
Could not connect: A connection attempt failed because the connected party did n
ot properly respond after a period of time, or established connection failed bec
ause connected host has failed to respond.

C:\Users\Kevin>
Это было полезно?

Решение

don.raman написал:

Пожалуйста, посмотрите http://bugs.php.net/bug.php?id=50172 для решения по этому поводу.

Другой альтернативой является использование PHP 5.2.12, в котором такого поведения нет.

я нашел это http://forums.iis.net/p/1164911/1933894.aspx и написал об этом.

Другие советы

У меня была ошибка my_sql_connect с Windows 7/Apache/MySql.Изменение параметра хоста с «localhost» на «127.0.0.1» также помогло мне.

Также для других хостов просто используйте IP-адрес вместо имени хоста (введите «ping» в командной строке, если вы хотите быстро найти его IP-адрес).

Сделай это:

  • Идти к C://Windows/System32/drivers/etc
  • Отредактируйте файл с именем host

Прежде чем что-либо делать, убедитесь, что у вас достаточно разрешений для его редактирования, щелкните его правой кнопкой мыши. Перейдите в СВОЙСТВА->БЕЗОПАСНОСТЬ->РЕДАКТИРОВАТЬ, затем выберите учетную запись пользователя, которую вы используете, и предоставьте ей полный контроль, установив флажок «Полный доступ», затем Применить->ОК

Открыть host файл с помощью блокнота или любого другого текстового редактора стандарта ANSI и раскомментируйте строку # 127.0.0.1 localhost удалив # и сохраните.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top