Моя ситуация такова:
У меня есть VM (сервер Ubuntu 13.04) с PHP 5.4.9-4ubuntu2.2, nginx/1.2.6, php5-fpm и Xdebug v2.2.1.
Я разрабатываю приложение, используя PhpStorm 6.0.3 (который я развертываю на виртуальной машине).
Моя проблема в том, что всякий раз, когда я пытаюсь запустить сеанс отладки, среда IDE никогда не получает запрос на соединение с веб-сервера (и, таким образом, сеанс никогда не запускается).
Я просмотрел множество рекомендаций по конфигурации xdebug и не нашел ничего полезного.
То, что я недавно понял, заключается в том, что если я сам установил cookie XDEBUG_SESSION через браузер (спасибо FireCookie), я могу отладить мое приложение... так что я думаю, что есть что-то, что веб-сервер отсылает cookie обратно клиенту.
Дело в том, что я использую одну и ту же конфигурацию IDE в другом проекте, который развертывается в другой виртуальной машине на базе CentOS (с lighttpd), и он отлично работает.
Я попытался развернуть мой текущий проект в такой виртуальной машине (сменив веб-сервер на NginX), и он работал полностью (к сожалению, я потерял эту виртуальную машину и не могу проверить конфигурацию:().
Итак... вот моя конфигурация NginX:
server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;
    server_name localhost;
    location / {
        try_files $uri $uri/ /dispatch.php;
    }
    #
    location ~ \.php$ {
        root /var/www/bresson/web;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index  dispatch.php;
        fastcgi_param  SCRIPT_FILENAME  /var/www/$fastcgi_script_name;
        include fastcgi_params;
        #fastcgi_pass   127.0.0.1:9009;
    }
}
fpm config (/etc/php5/fpm/pool.d/www.conf):
listen = /var/run/php5-fpm.sock
xdebug.ini:
zend_extension=/usr/lib/php5/20100525/xdebug.so
xdebug.remote_port=9000
xdebug.remote_enable=On
xdebug.remote_connect_back=On
xdebug.remote_log=/var/log/xdebug.log
Любая идея будет высоко оценена. Спасибо!
EDIT:
Еще одна вещь, которую я пробовал, - начать сеанс с php, и я увидел, что cookie сеанса был создан без проблем...
2nd Edit:
Я думаю, что нашел, где проблема: URI.
Я написал еще один script, чтобы попробовать параметры конфигурации и прочее (намного проще), и это сработало!
Итак, в конце концов, я решил, что проблема заключается в том, что параметры запроса (т.е. XDEBUG_SESSION_START=14845) не достигли моего script.
Проблема заключается в моем исходном URI, который имеет форму /images/P/P1/P1010044-242x300.jpg. Через некоторую конфигурацию виртуального хоста я должен был бы перенаправить его на что-то вроде /dispatch.php/images/P/P1/P1010044-242x300.jpg и использовать остальную часть URI в качестве параметров. Итак... Я не нашел решения как такового, но теперь у меня есть жизнеспособное решение (указывая мой начальный URL-адрес на /dispatch.php), который будет делать это некоторое время. Благодаря