Почему xdebug разрушает апача на каждой установке XAMPP, которую я попробовал?

Сначала добро пожаловать в Stack Overflow.

Теперь напишите ваш метод Register POST следующим образом:

[HttpPost]
public ActionResult Register(UserVM obj)
{
    if (ModelState.IsValid)
    {
        var isEmailAlreadyExists = db.User.Any(x => x.Email == obj.Email);
        if(isEmailAlreadyExists)
        {
            ModelState.AddModelError("Email", "User with this email already exists");
            return View(obj)
        }

        User newobj = new User();
        newobj.UserName = obj.UserName;
        newobj.Email = obj.Email;
        newobj.Password = obj.Password;
        newobj.Address = obj.Address;
        db.User.Add(newobj);
        db.SaveChanges();
        return RedirectToAction("Index");

    }

    return View(obj)
}
9
задан 15 October 2008 в 22:35
поделиться

19 ответов

Я использую Vista x86 SP1, XAMPP 1.6.8 и плагин php_xdebug-2.0.2-5.2.5.dll. Недавно я заметил, что, когда я прокручиваю xampp-control.exe, щелкают правой кнопкой => выполненный как администратор, все катастрофические отказы скончались :) Иногда происходит, но очень редкий и я могу использовать отладчик в Eclipse PDT. Проверьте мое решение

0
ответ дан 4 December 2019 в 08:17
поделиться

Согласно этой Проблеме я предлагаю, чтобы Вы отключили эти две строки в Вашем php.ini:

;xdebug.profiler_enable=1
;xdebug.profiler_output_dir="(temp_dir)"

работавший для меня

0
ответ дан 4 December 2019 в 08:17
поделиться

Спасибо за Ваш комментарий я разрешил проблему с помощью этой версии php_xdebug-2.0.2-5.2.5.dll, работы для меня на Windows Vista Business 64bit...... конфигурация php.ini является тем же, только для использования этого xdebug dll версия....... благодарит

Hermes

0
ответ дан 4 December 2019 в 08:17
поделиться

Ответ Matty помог мне помешать Apache отказывать, но я не могу получить удаленную работу сеанса отладки. Каждый раз, когда я пытаюсь ступить через код, мой клиент жалуется, что соединение было закрыто, так все еще никакая отладка для меня все же.

Но, в случае, если это полезно для кого-либо еще, вот редактирования, которые я сделал в apache\bin\php.ini файл в XAMPP 1.6.8 (то же работало в 1.7.0). Строка 671:

extension=php_xdebug-2.0.4-5.2.8.dll

и строка 1297 я добавил:

[XDebug]
;; Only Zend OR (!) XDebug
zend_extension_ts="\xampplite\php\ext\php_xdebug-2.0.4-5.2.8.dll"
xdebug.remote_enable=true
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=1
xdebug.profiler_output_dir="\xampplite\tmp"
xdebug.trace_output_dir="\xampplite\tmp"
1
ответ дан 4 December 2019 в 08:17
поделиться

Я получил решение, работающее на Vista с помощью комбинации вышеупомянутого поэтому, если это помогает, любой здесь идет...

Eclipse Европа - Версия: 3.3.2 Идентификатор сборки: M20080221-1800

XAMPP - установщик версии 1.6.8 win32

xdebug - php_xdebug-2.0.2-5.2.5.dll

Содержание ~/xampp/apache/bin/php.ini

[Zend]
;zend_extension_ts = "C:\xampp\php\zendOptimizer\lib\ZendExtensionManager.dll"
;zend_extension_manager.optimizer_ts = "C:\xampp\php\zendOptimizer\lib\Optimizer"
;zend_optimizer.enable_loader = 0
;zend_optimizer.optimization_level=15
;;zend_optimizer.license_path =
; Local Variables:
; tab-width: 4
; End:

[XDebug]
;; Only Zend OR (!) XDebug
zend_extension_ts="C:\xampp\php\ext\php_xdebug-2.0.2-5.2.5.dll"
xdebug.remote_enable=true
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=1
xdebug.profiler_output_dir="C:\xampp\tmp"

И абсолютно решающий бит для меня....

;extension=php_xdebug-2.0.2-5.2.5.dll

Правильно! Прокомментируйте вышеупомянутую строку.

Надеюсь, это поможет

1
ответ дан 4 December 2019 в 08:17
поделиться

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

1
ответ дан 4 December 2019 в 08:17
поделиться

Может только обычно быть ОДНО расширение уровня механизма для PHP. Я в настоящее время использую последний xampp облегченный пакет на своей машине с xdebug и его штрафом.

Используя grep (gnu32 пакет для окон) или некоторый другой текстовый фильтр, получите список каждой строки в Вашем файле PHP, который имеет слово "расширение" в нем, и удостоверьтесь, что Вы знаете точно, какие пакеты используются для Вашей стопки wamp.

Затем. работы xdebug лучше как расширение механизма, но как пара людей указали, что она может использоваться в качестве регулярного расширения также. Потеря производительности между механизмом и нормальными расширениями - то, что профилирование не почти как точное, редактор->, сервер, отлаживающий не надежен и, кажется, ни над чем не работает кроме явного xdebug_break () операторы.

В последний раз вещи пары попробовать состоят в том, чтобы назвать php-i и канал это к текстовому файлу. Если это отказывает там, то его время для движения в более решительные меры. Найдите все файлы php.ini на своей машине окон и один за другим переименуйте их к чему-то как php.disabled.ini или disabled_php.ini и попробуйте php-i вызов снова. Его очень возможное у Вас есть файл php.ini, скрывающийся в некоторых странных местоположениях как c:\ | c:\windows\ | c:\windows\system or somewhere else that takes precedence in the path then what your expecting it to be xammp\apache\bin

1
ответ дан 4 December 2019 в 08:17
поделиться

Существует список совместимости Windows, доступный здесь. Кажется, что xdebug не поддерживается для Vista...

1
ответ дан 4 December 2019 в 08:17
поделиться
  1. Откройте php.ini в xampp\apache\bin папке (не в xampp\php папке).
  2. Найдите строку extension=php_xdebug.dll.
  3. Не прокомментируйте это.
1
ответ дан 4 December 2019 в 08:17
поделиться

удостоверьтесь, что у Вас есть последняя версия xdebug? У меня были те же проблемы со староватой версией xampp, загрузил последний .dll xdebug, измененного отображения в php.ini, и работавший обработка.

Взял меня несколько часов для получения хотя.. grr

1
ответ дан 4 December 2019 в 08:17
поделиться

Я нашел решение для этой проблемы. Можно найти его здесь: http://wiki.mpsoftware.dk/index.php?title=Tutorial_on_how_to_configure_Xdebug_to_work_with_phpDesigner_2008

Проблема состоит в том, что XDebug не совместим с оптимизатором Зенда, таким образом, необходимо прокомментировать все разделы под разделом [Zend].

1
ответ дан 4 December 2019 в 08:17
поделиться

Через некоторый другой форум я нашел, что возможная подсказка - в то время как обычно апачский на xampp использует php.ini, который является в апаче/каталоге bin, некоторые модули не делают. Таким образом, я играл вокруг с php.ini в том каталоге (просто перемещающий его из вреда, путь работал на меня до сих пор, как в переименовании/удалении его). Мог бы хотеть дать ему попытку, по крайней мере.

1
ответ дан 4 December 2019 в 08:17
поделиться

Я запускаю XAMPP для Windows версии 1.7.1 на моем компьютере с Win7 с xDebug и он отлично работает.

Проверьте, установлен ли у вас SP1, и следуйте этим примечаниям :

  1. Найдите строку, содержащую implicit_flush , и установите ее следующим образом:

    implicit_flush = On

  2. Найдите раздел с именем [Zend] и закомментируйте все строки, поставив точку с запятой (";") в начале каждой строки.

  3. Найдите строку: zend_extension = "c: \ xampp \ php \ ext \ php_xdebug.dll" и раскомментируйте ее.

  4. Найдите раздел [XDebug] и раскомментируйте все строки (за исключением первой строки, которая является реальным комментарием). Для Windows это должно выглядеть следующим образом:

      [XDebug]
    ;; Только Zend ИЛИ (!) XDebug
    zend_extension_ts = "C: \ XAMPP \ PHP \ вн \ php_xdebug.dll"
    xdebug.remote_enable = верно
    xdebug.remote_host = локальный
    xdebug.remote_port = 10000
    xdebug.remote_handler = DBGp
    xdebug.profiler_enable = 1
    xdebug.profiler_output_dir = "C: \ XAMPP \ TMP"
    
6
ответ дан 4 December 2019 в 08:17
поделиться

Пробежался по этому пути, выполнив поиск в Google, почему XDebug вызывал сбой моего WAMP Apache. Я только что обновился до ноутбука Vista 64 с текущей версией WAMP (2.0), и вот что я положил в свой php.ini, чтобы остановить сбой.

Я использую NetBeans в качестве среды IDE, и отладка работает без проблем. хорошо.

Во-первых, закомментируйте в вашем активном php.ini.

;extension=php_xdebug-2.0.4-5.2.8.dll

Затем добавьте это в конец вашего активного php. ini (Настройте каталоги и имя файла xdebug соответственно.)

[XDebug]
; Only Zend OR (!) XDebug
zend_extension_ts="C:/Program Files (x86)/wamp/bin/php/php5.2.9-2/ext/php_xdebug-2.0.4-5.2.8.dll"
xdebug.remote_enable=on
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=0
xdebug.profiler_output_dir="C:/Program Files (x86)/wamp/tmp"
1
ответ дан 4 December 2019 в 08:17
поделиться

есть проблема безопасности потоков с XDebug в Vista, у меня была такая же проблема при использовании IIS7 с PHP в качестве модуля ISAPI, сервер случайно вылетал при загрузке xdebug.dll, тогда я обнаружил статья, в которой описывалось, что PHP + XDebug (в Vista) следует запускать в однопоточном режиме.

Я заставил его работать следующим образом:

Версия PHP, не поддерживающая потоки, непоточная -safe xdebug.dll для вашей версии PHP, в php.ini он должен быть загружен как zend_extension = "C: / FullPathToXdebugDll" (без "_ts"!), при запуске php в режиме CGI (или лучше FastCGI). (CGI / FastCGI заставляет его быть однопоточным.)

вот ссылка на статью: http://learn.iis.net/page.aspx/246/using-fastcgi-to-host-php-applications-on-iis-70/

Сейчас ищу возможность сделать то же самое с Xampp или InstantRails (или что-то в этом роде), чтобы запустить его на моем ноутбуке (Vista Home Premium не имеет IIS), но я не знаю, как заставить apache работать в однопоточном режиме, кто-нибудь знает, как для этого?

1
ответ дан 4 December 2019 в 08:17
поделиться

У Евгения это правильно для меня.

  • Скачайте небезопасную для потоков dll с http://xdebug.org/download.php
    т.е. 5.2 VC6 Non-thread-safe (32 bit)

  • сохраните его в вашем \ xampp \ php \ ext каталоге

  • откройте ваш php.ini
    C: \ xampp \ php \ php .ini

Прокрутите вниз и найдите [XDebug] и замените

zend_extension_ts="C:\xampp\php\ext\php_xdebug.dll"

этим

zend_extension="C:\xampp\php\ext\php_xdebug-2.0.5-5.2-nts.dll"

, чтобы он выглядел так:

[XDebug]
;; Only Zend OR (!) XDebug
zend_extension="C:\xampp\php\ext\php_xdebug-2.0.5-5.2-nts.dll"
xdebug.remote_enable=true
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=1
xdebug.profiler_output_dir="C:\xampp\tmp"
1
ответ дан 4 December 2019 в 08:17
поделиться

Это может быть кому-то полезно. У меня был повторяющийся сбой Apache при отладке веб-страниц PHP с помощью Eclipse и XDebug, я пробовал всевозможные переустановки и изменения PHP.INI и в конце концов понял, что моя проблема связана с использованием повторяющегося имени переменной в отдельных файлах. Один файл включал другой, и оба имели (скажем,) $ foo. Как только я переименовал $ foo в $ newfoo во втором файле и перезапустил Apache, я избавился от сбоев.

Кроме того, в некотором роде мне не удавалось заставить файл PHP.INI работать, как это широко описано здесь и в других местах. Мне пришлось удалить _ts из zend-extension, см. Ниже, чтобы получить текст phpinfo (): с Xdebug v2.0.5, Copyright (c) 2002-2008, Дерик Ретанс.

XAMPP 1.7.2 (с использованием php_xdebug .dll из комплекта поставки) PHP 5.3.0

Вот мой фрагмент файла PHP.INI:

xdebug.remote_enable = 1 xdebug.remote_host = "127.0.0.1" xdebug.remote_port = 9000 xdebug.remote_handler = "dbgp" zend_extension = "C: \ xampp \ php \ ext \ php_xdebug.dll"

1
ответ дан 4 December 2019 в 08:17
поделиться

У меня была такая же проблема. Это было решено последней версией xdebug (2.0.6). Он все еще находится в режиме разработки, но для меня он более стабилен, чем предыдущие выпуски :)

Он является частью XAMPP 1.7.3beta http://www.apachefriends.org/en/xampp-beta. html

Включение xdebug сводилось только к раскомментированию одной строки в xampp / php / php.ini

HTH

1
ответ дан 4 December 2019 в 08:17
поделиться

Фрагментная часть URL никогда не отправляется на сервер посредством запросов GET (или любого HTTP-запроса на этот счет), единственный способ получить его - это написать фрагмент Javascript, который анализирует URL и отправляет фрагмент обратно на сервер, например, через Ajax.

Это невозможно сделать только с помощью PHP.

-121--3772202-

Одна из проблем - пропускная способность звуковых кабелей, в которую я не пойду. Что касается аудиопортов, то следует использовать звуковые карты с максимальной частотой дискретизации 44100 или 48000 выборок/с при 16 битах/выборке/канале, что приводит к максимальной полосе пропускания 22,05 или 24 кГц. (в основном результат теоремы дискретизации Найквиста-Шеннона , хотя для дискретизации звука дискретизированный сигнал также должен быть непрерывной амплитудой для применения этой теоремы) и скорость передачи 176,4 или 192 кБс для стерео.

Согласно Studio Six Digital , линия подключения на iPhone поддерживает максимальную частоту дискретизации 48 кГц. Микрофон на 3G версии также работает на частоте 48 кГц, в то время как микрофон iPhone 1-го поколения был взят на 8kHz. Я не смог найти битовые спецификации глубины для iPhone, но я полагаю, что он использует 16 битовых образцов. Другой возможностью является 24 битовых выборки.

Согласно Fortuny на форумах Apple , который цитировал Apple Audio Developer Note, линия на MacBook поддерживает до 24 битовых выборок с частотой дискретизации 96 кГц для скорости передачи данных 576 кБит/с. На странице внешних портов и разъемов MacBook указана максимальная частота дискретизации 192 кГц, но, возможно, они переключились с максимальной частотой дискретизации для цифрового звука с помощью оптического порта.

Для сравнения скорости телефонные системы имели частоту дискретизации 8 кГц при 8 битах/моно выборки, в результате чего максимальная скорость передачи данных составляла 8 кбит/с. ЧМ имеет частоту дискретизации 22,05 кГц при 16 битах/выборке/канале и является стерео, что приводит к скорости передачи данных 88,2 кБс.

Конечно, вышеупомянутые вычисления игнорируют проблему синхронизации потока данных и обнаружения ошибки и исправления, все из которых будут потреблять часть сигнала.

-121--1689589-

установить новую версию XAMPP

1
ответ дан 4 December 2019 в 08:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: