将 CakePHP3 应用程序部署到 Ubuntu 服务器后,所有资产 return 404 响应

After deploying CakePHP3 application to Ubuntu server, all assets return 404 response

当我使用 git 推送将我的 CakePHP3 应用程序部署到 Ubuntu 服务器的 var/www/html/{project_name} 目录时,图像、css 文件、javascript 等所有资产...从 webroot 文件夹未加载。他们 return 404 响应。

这是我在 webroot 目录中的 .htaccess 文件:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteBase /
   RewriteRule    ^$    /    [L]
   RewriteRule    (.*) /    [L]
   AllowOverride All
</IfModule>

这是我的 .htaccess 根目录:

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule    ^$    webroot/    [L]
    RewriteRule    (.*) webroot/    [L]
</IfModule>


<IfModule mod_rewrite.c>
    RewriteEngine On
    ReWriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

我在根项目目录中通过 运行 composer install 修复了这个问题。

请注意,如果您的服务器为您的应用程序使用 PHP7 而不是 PHP5,则您应该安装通用包而不是丢弃的 PHP5 包。