更改根文件 aws nginx 服务器

Posted

技术标签:

【中文标题】更改根文件 aws nginx 服务器【英文标题】:Change root file aws nginx server 【发布时间】:2020-09-28 14:22:04 【问题描述】:

我已经被这个问题困扰了一段时间。我们有一个 Symfony 2.8 项目,我想将它部署到云端。我已经正确创建了 ElasticBeanstalk 环境并且它可以工作!但我仍然需要访问http://domain/app.php 才能使其正常工作。我设法从 URL 中删除了 web/更改 documentDirectory 部分,但 app.php 仍然存在。

我还尝试了以下新品牌项目: https://docs.aws.amazon.com/es_es/elasticbeanstalk/latest/dg/php-symfony-tutorial.html 但是当我将其更改为 public/ 时,我也需要在 URL 中使用 index.php

我修改了 nginx 配置如下: https://community.bitnami.com/t/how-to-change-default-root/65639/9 https://symfony.com/doc/current/setup/web_server_configuration.html

这是我添加到 /etc/nginx/nginx.conf.default 的内容

  location / 
    try_files $uri $uri/ /app.php$is_args$args;


 location ~ \.php$ 
    try_files $uri $uri/ =404;
    fastcgi_pass unix:/var/run/php-fpm/www.sock;
    fastcgi_index app.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;

我已经重启了 nginx 服务使用

sudo service nginx restart

但它保持不变。

我也尝试将 app.php 重命名为 index.php 以防万一。但是我需要将 /index.php 添加到 URL 中。

有什么想法吗?

【问题讨论】:

index app.php; 添加到任何位置之外的服务器块怎么样? 我已经尝试过你所说的但没有工作。如何检查 NGINX 服务器是否实际上正在重新启动并应用修改?我已经尝试了很多东西,甚至没有打破它 我重新阅读了您的问题,为什么您将更改应用到nginx.conf.default 而不是nginx.conf?运行nginx -V,查找--conf-path=<filename>参数,就是nginx使用的配置文件。 在重启/重新加载 nginx 之前不要忘记运行 nginx -t 来测试你的新配置是否有错误。 即使使用index app.php; 指令? 【参考方案1】:

使用index nginx 指令使app.php 成为http://domain/ 请求的默认处理程序:

server 
    ...
    index    app.php;
    # your locations here

【讨论】:

感谢您的快速回复。我会评论 nginx -V 以查看正在使用的文件并正确编辑它 当您需要检查使用 nginx 可执行文件构建了哪些模块时,此命令也很有用。【参考方案2】:

您可以尝试一些事情。

https://symfony.com/doc/2.8/setup/web_server_configuration.html#nginx

您可以在此处找到项目的配置。在那里你可以看到位置被重写为app.php

location ~ ^/(app_dev|config)\.php(/|$) 

所以我建议进行配置并对其进行测试。

【讨论】:

我试过了,但没有。我开始认为 NGINX 没有重新启动和应用新配置。我会解决这个问题。感谢您的回复! 当 nginx 没有重新启动然后尝试“systemctl status nginx”然后你应该会看到错误或查看日志。 好像重启了:正在启动nginx HTTP和反向代理服务器... nginx:配置文件/etc/nginx/nginx.conf语法没问题 nginx:配置文件/etc/nginx/ nginx.conf 测试成功 启动了 nginx HTTP 和反向代理服务器。但似乎忽略了变化。我应该编辑其他文件吗?

以上是关于更改根文件 aws nginx 服务器的主要内容,如果未能解决你的问题,请参考以下文章

LetsEncrypt - VirtualMin - Nginx:更改根文件夹

nginx设置

nginx 从根服务静态文件并从别名上传文件

如何更改 cloudformation 中的默认根 EBS 大小? [AWS]

nginx 部署 多个vue项目 端口代理配置问题

如何更改 XAMPP Web 服务器根文件?