我正在尝试配置nginx,并在下面的配置中进行了如下配置:
/etc/nginx/sites启用/默认
server {
server_name firstproj.dev www.firstproj.dev;
root /var/www/firstProj/web;
location / {
try_files $uri /app.php$is_args$args;
}
location ~ ^/(app_dev|config)\.php(/|$) {
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
}
location ~ ^/app\.php(/|$) {
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
internal;
}
location ~ \.php$ {
return 404;
}
error_log /var/log/nginx/project_error.log;
access_log /var/log/nginx/project_access.log;
}其中app.php和app_dev.php都是由symfony创建的/var/www/firstProj/web/文件夹中的文件,没有进一步的修改。
firstProj是我目前正在研究的一个symfony项目,我在这里不了解的是:
我希望它能与www.firstproj.dev/ make一起工作,没有app_dev.php,但我不能让它那样工作。此外,如果我访问
http://localhost
我得到:
欢迎来到nginx! 如果您看到此页面,则nginx服务器已成功安装和运行。需要进一步配置。 有关在线文档和支持,请参阅nginx.org。nginx.com提供商业支持。 感谢您使用nginx。
如果这是一个相当愚蠢的问题,我很抱歉,但就服务器配置而言,我是个初学者。
谢谢!
发布于 2016-12-28 00:04:03
所以你发现你的app_dev.php可以工作,但app.php不能工作?
我以前也有过这样的经历,有几件事值得我们去检查。
app_dev.php的内容复制到app.php中,并查看www.firstproj.dev/app.php或www.firstproj.dev是否有效。如果它有效,那么您就知道这不是NGINX的问题,而是Symfony设置的问题。cache或logs创建了prod目录或仅为dev创建了目录?它们可以由www-data写吗?/var/log/nginx/project_error.log,以查看在尝试访问app.php时是否出现了错误app.php文件的顶部,添加行error_reporting(E_ALL);。现在,当您尝试访问生产版本时,会看到任何错误吗?ACL还是CHOWN/CHMOD?)您可以运行类似于sudo su -u www-data php bin/console cache:clear --env prod的程序https://stackoverflow.com/questions/41352048
复制相似问题