14

I am getting this error message when try to open

/app_dev.php

An error occurred while loading the web debug toolbar (404: Not Found).

Do you want to open the profiler?

When I click ok, I am getting then the error:

app_dev.php/_profiler/5053258a822e1

and

404 Not found

I am using nginx

Thank you very much for your help.

EDIT: Here is the error log:

[error] 18369#0: *9 open() "/var/www/Symfony/web/app_dev.php/_wdt/5056f875afc98" failed (20: Not a directory), client: 127.0.0.1, server: symfony, request: "GET /app_dev.php/_wdt/5056f875afc98 HTTP/1.1", host: "symfony", referrer: "http://symfony/app_dev.php"
[error] 18369#0: *9 open() "/var/www/Symfony/web/404" failed (2: No such file or directory), client: 127.0.0.1, server: symfony, request: "GET /app_dev.php/_wdt/5056f875afc98 HTTP/1.1", host: "symfony", referrer: "http://symfony/app_dev.php"

EDIT 2:

When i try to access app_dev.php the page opens but without the toolbar and when I try with app_dev.php/ I am getting the

**Oops! An Error Occurred
The server returned a "404 Not Found".
Something is broken. Please e-mail us at [email] and let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused. **

error.

4
  • 1
    Can you post your nginx error log? (Not only what is printed into your browser!) Commented Sep 17, 2012 at 10:02
  • Thank you Florent, I changed my question Commented Sep 17, 2012 at 10:29
  • Resolved, Check my answer here: stackoverflow.com/a/30313196/1700429 Commented May 18, 2015 at 21:41
  • I hope this link helps because it kinda the same. stackoverflow.com/questions/30299009/… Commented May 19, 2015 at 7:42

7 Answers 7

11

I know this isn't exactly what you asked but might help future people who search for this issue, like @yvoyer suggested, my issue was the trailing slash too, my server used nginx and fpm, and in nginx // does not euqal /, so i had to do a bit of fixes on my virtual host conf and it worked fine after that. I'll just paste the conf for whoever needs it, or suggests a better one.

    location / {
            try_files $uri @pass_to_symfony;
    }

    location ~ /app_dev.php/ {
            try_files $uri @pass_to_symfony_dev;
    }

    location @pass_to_symfony{
            rewrite ^ /app.php?$request_uri last;
    }

    location @pass_to_symfony_dev{
            rewrite ^ /app_dev.php?$request_uri last;
    }

    location ~ ^/app(_dev)?\.php($|/) {
            include fastcgi_params;
            fastcgi_pass   unix:/var/run/php5-fpm.sock; # replace with your sock path
    }
Sign up to request clarification or add additional context in comments.

Comments

3

I had the same error, but I found out that the message was output when I typed app_dev.php/ but not when requesting app_dev.php (Notice the trailing slash /).

I think it has to do with the Router, but Its just an educated guess

Comments

1

My error was related to Nginx configuration (using symfony 3.1), and I just edited the recommended config for Nginx from Symfony:

http://symfony.com/doc/current/setup/web_server_configuration.html

So, maybe it was because of symlinks, I don't know.

I copied a small part to Nginx Default config and edited to match all .php:

##
# You should look at the following URL's in order to grasp a solid understanding
# of Nginx configuration files in order to fully unleash the power of Nginx.
# http://wiki.nginx.org/Pitfalls
# http://wiki.nginx.org/QuickStart
# http://wiki.nginx.org/Configuration
#
# Generally, you will want to move this file somewhere, and start with a clean
# file but keep this around for reference. Or just disable in sites-enabled.
#
# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
##

# Default server configuration
#
server {
    listen 80 default_server;
    listen [::]:80 default_server;

    # SSL configuration
    #
    # listen 443 ssl default_server;
    # listen [::]:443 ssl default_server;
    #
    # Note: You should disable gzip for SSL traffic.
    # See: https://bugs.debian.org/773332
    #
    # Read up on ssl_ciphers to ensure a secure configuration.
    # See: https://bugs.debian.org/765782
    #
    # Self signed certs generated by the ssl-cert package
    # Don't use them in a production server!
    #
    # include snippets/snakeoil.conf;

    root /var/www/html;

    # Add index.php to the list if you are using PHP
    index index.html index.htm index.nginx-debian.html;

    server_name _;

    location / {
        # First attempt to serve request as file, then
        # as directory, then fall back to displaying a 404.
        try_files $uri $uri/ =404;
    }


    # Symfony
    location ~ \.php(/|$) {
            fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
        fastcgi_split_path_info ^(.+\.php)(/.*)$;
        include fastcgi_params;
        # When you are using symlinks to link the document root to the
        # current version of your application, you should pass the real
        # application path instead of the path to the symlink to PHP
        # FPM.
        # Otherwise, PHP's OPcache may not properly detect changes to
        # your PHP files (see https://github.com/zendtech/ZendOptimizerPlus/issues/126
        # for more information).
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        fastcgi_param DOCUMENT_ROOT $realpath_root;
    }


    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    #location ~ \.php$ {
    #   include snippets/fastcgi-php.conf;
    #
    #   # With php7.0-cgi alone:
    #   fastcgi_pass 127.0.0.1:9000;
    #   # With php7.0-fpm:
    #   fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    #}

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #   deny all;
    #}

}


# Virtual Host configuration for example.com
#
# You can move that to a different file under sites-available/ and symlink that
# to sites-enabled/ to enable it.
#
#server {
#   listen 80;
#   listen [::]:80;
#
#   server_name example.com;
#
#   root /var/www/example.com;
#   index index.html;
#
#   location / {
#       try_files $uri $uri/ =404;
#   }
#}

I would recommend sticking to Symfony recommendation for a production server.

Comments

0

To display web debug toolbar in developer mode in Symfony2 page should have valid HTML.

1 Comment

Thank you @Rafal, but I am trying to open the app_dev.php file, it comes from the Symfony website. How to resolve this problem?
-1

It happened in my dev environnement, so I comment the directive DirectoryIndex in my vhost config file, so now I get to my app with : http://127.0.0.1/app_dev.php And no more errors about the profiler ! I use Symfony 2.3.x.

Comments

-1

I have found the solution (more or less). I took another existing Symfony project and everything works fine now. I realy don't know why the Symfony standard release is not working in my case... If somebady needs the empty symfony project, I can upload the archive.

EDIT: here is the template of the working Symfony 2.0 : http://www.megafileupload.com/en/file/372986/Symfony-tpl-zip.html

2 Comments

please upload the archive, i have same problem
Here is the Symfony template. Enjoy: megafileupload.com/en/file/372986/Symfony-tpl-zip.html If you find this usefull, please upvote. Thank you.
-3

please try paying attention to your .htaccess, I had this problem too and I fixed mine.

    <IfModule mod_rewrite.c>
    RewriteEngine On
        RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$
    RewriteRule ^(.*) - [E=BASE:%1]
    RewriteCond %{ENV:REDIRECT_STATUS} ^$
    RewriteRule ^app_dev.php(/(.*)|$) %{ENV:BASE}/$2 [R=301,L]    ##### this is the part that you should tweak, have the .htaccess point the request to app_dev.php, since the routing.yml is empty initially
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule .? - [L]
    RewriteRule .? %{ENV:BASE}/app_dev.php [L]        ##### this is the part that you should tweak, have the .htaccess point the request to app_dev.php, since the routing.yml is empty initially
    </IfModule>

    <IfModule !mod_rewrite.c>
    <IfModule mod_alias.c>
        # When mod_rewrite is not available, we instruct a temporary redirect of
        # the startpage to the front controller explicitly so that the website
        # and the generated links can still be used.
        RedirectMatch 302 ^/$ /app.php/
        # RedirectTemp cannot be used instead
    </IfModule>
    </IfModule>

1 Comment

Please read the entire post first: "I am using nginx Thank you very much for your help." While your comment is appropriate to APACHE it will screw people up.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.