.htaccess 正在将htaccess重写规则转换为nginx

tvmytwxo  于 2022-11-16  发布在  Nginx
关注(0)|答案(1)|浏览(156)

我很难弄清楚如何将这个htaccess规则重写为nginx规则。它是为一个在url中使用静态资产版本的遗留项目编写的。
例如,服务器上的文件位于:
assets/js/jquery.min.js
获取它的URL是:
assets/js/jquery.min.1661243858.js
htaccess规则为

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*?\/)*?([a-zA-Z\.\-]+)(\d+)\.(bmp|css|cur|gif|ico|jpe?g|js|png|svgz?|webp|webmanifest)$ $1$2$4 [L]
</IfModule>

我尝试了一些转换器,发现一篇博客文章讨论了这个问题。但是它似乎不起作用。我使用ddev作为我的环境。当前我在.ddev/nginx_full/nginx-site.conf中设置的nginx规则,我删除了#ddev-generated:

location ~* (.+)\.(?:\d+)\.(js|css|png|jpg|jpeg|gif|webp)$ {
  try_files $uri $1.$2;
}
rryofs0p

rryofs0p1#

所以问题是我假设执行ddev start应用了在.ddev/nginx_full/nginx-site.conf中所做的更改。它没有。我需要使用ddev restart。nginx规则是正确的。

相关问题