错误 500:在共享主机(Apache)上部署 Symfony 6 应用程序时出现内部服务器错误

错误 500:在共享主机(Apache)上部署 Symfony 6 应用程序时出现内部服务器错误

我已成功使用 Deployer 将我的应用程序部署到远程主机。

我在共享主机上,无法访问 Apache 配置。

应用程序部署在为附加域创建的目录中,也就是说,它不在主域中。此文件夹位于:home/serverid/myrootadon

当我尝试导航到已安装该应用程序的域时,https://example.com我得到:

错误 500 - 内部服务器错误

处理您的请求时遇到错误。通常,这只是暂时的情况。请联系网站所有者获取进一步的帮助。

我不明白是什么导致了这个错误。我尝试查看错误日志,但什么也没找到。

在根文件夹中仅有一个error_log文件,内容如下:

[01-Jun-2023 15:23:46 UTC] 2023-06-01T15:23:46+00:00 [info] 用户弃用:“Monolog\Logger”类被视为最终版本。它可能会在下一个主要版本中更改,恕不另行通知。您不应从“Symfony\Bridge\Monolog\Logger”扩展它。

在该var/log文件夹中,有一个名为的文件dev.log

2023-06-01T15:46:05.158715+00:00] deprecation.INFO: 用户弃用:“Monolog\Logger”类被视为最终版本。它可能会在下一个主要版本中更改,恕不另行通知。您不应从“Symfony\Bridge\Monolog\Logger”扩展它。{“exception”:“[object](ErrorException(代码:0):用户弃用:“Monolog\Logger”类被视为最终版本。它可能会在下一个主要版本中更改,恕不另行通知。您不应从“Symfony\Bridge\Monolog\Logger”扩展它。在/home/serverid/myrootadon/releases/4/vendor/symfony/error-handler/DebugClassLoader.php:338)”} []

我有这个:

# Options All -Indexes
<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteBase /
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ public/index.php [QSA,L]
</IfModule>

在两个.htaccess文件中:/home/serverid/myrootadon/.htaccess/home/serverid/myrootadon/public_html/.htaccess

如果我从控制台执行此操作,则数据库连接正在工作:

$ php current/bin/console  dbal:run-sql "SELECT * from post";

我可以看到表中的行post

路线定义如下:

$ php current/bin/console debug:router

 -------------------------- -------- -------- ------ ----------------------------------- 
  Name                       Method   Scheme   Host   Path                               
 -------------------------- -------- -------- ------ ----------------------------------- 
  _preview_error             ANY      ANY      ANY    /_error/{code}.{_format}           
  _wdt                       ANY      ANY      ANY    /_wdt/{token}                      
  _profiler_home             ANY      ANY      ANY    /_profiler/                        
  _profiler_search           ANY      ANY      ANY    /_profiler/search                  
  _profiler_search_bar       ANY      ANY      ANY    /_profiler/search_bar              
  _profiler_phpinfo          ANY      ANY      ANY    /_profiler/phpinfo                 
  _profiler_xdebug           ANY      ANY      ANY    /_profiler/xdebug                  
  _profiler_search_results   ANY      ANY      ANY    /_profiler/{token}/search/results  
  _profiler_open_file        ANY      ANY      ANY    /_profiler/open                    
  _profiler                  ANY      ANY      ANY    /_profiler/{token}                 
  _profiler_router           ANY      ANY      ANY    /_profiler/{token}/router          
  _profiler_exception        ANY      ANY      ANY    /_profiler/{token}/exception       
  _profiler_exception_css    ANY      ANY      ANY    /_profiler/{token}/exception.css   
  app_post                   ANY      ANY      ANY    /post                              
  post_show                  ANY      ANY      ANY    /post/{id}                         
 -------------------------- -------- -------- ------ ----------------------------------- 

如果我尝试导航到:https://example.com/post/1当数据库中存在 id=1 的帖子时,也会出现错误 500。

所有这些在本地都可以完美运行,但是当我将其部署到远程服务器时,我无法使其工作,也找不到 500 错误的位置。我在浏览器控制台中也看不到任何内容。

相关内容