【问题标题】:Laravel Valet nginx location regex not working on Mac CatalinaLaravel Valet nginx 位置正则表达式在 Mac Catalina 上不起作用
【发布时间】:2019-12-24 02:45:16
【问题描述】:

我正在使用 Laravel Valet,但是当添加一些在 Forge Linux 服务器上完美运行的正则表达式位置时,不适用于 MacOS。它不会给出任何错误,只是不会加载任何正确的 css。正则表达式用于 css/js 版本控制。见以下代码:

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

在之前添加

location / {
    rewrite ^ "/Users/home/.composer/vendor/laravel/valet/server.php" last;
}

在 valet.conf 文件中

【问题讨论】:

    标签: regex nginx nginx-location laravel-valet


    【解决方案1】:

    通过使用自定义代客驱动程序解决,它只是 php,您可以使用它来处理传入的请求并返回所需的 url 或响应。在这种情况下,我在项目根文件夹中创建了一个 LocalValetDriver 并在 isStaticFile 函数中跳过文件名的数字部分,只需记住在 server 函数上返回 true 以便您的将使用自定义驱动程序。

    有关自定义驱动程序的更多信息,请随时访问Valet's documentation here

    【讨论】:

      【解决方案2】:

      如果您使用的是 php 7.3,可能是因为它。 检查这个link

      【讨论】:

      • 我相信它与下一行的重写有关,但找不到让它工作的方法。 Linux VM 也在使用 7.3.x 并且可以正常工作。
      • 刚刚在我的 MacOS Mojave 上进行了测试:查看此屏幕截图:i.imgur.com/O3mz1g6.png 一切正常。
      • 但是为什么要在 valet.conf 中添加这部分代码呢?添加到 valet/Nginx/name_of_your_site.domain
      • 也在那里添加,没有任何区别。在一般 conf 文件中添加,因为它不会影响任何其他站点。是的,它可以识别它,但不会像我期望的那样忽略 style.284627198.css 到 style.css 中的时间戳
      • 试图强制浏览器重新加载 css,而且——不是我的想法——至少现在必须处理它
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-11
      • 2017-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多