gpt4 book ai didi

laravel - Docker Laravel Vuejs Nginx发布加载 Assets

转载 作者:行者123 更新时间:2023-12-02 18:14:32 25 4
gpt4 key购买 nike

我无法让我的Nginx配置正常工作。

我有一个Laravel应用程序,但是/ admin uri被Nginx重定向到vuejs应用程序。

VueJS应用程序的index.html文件可以很好地加载,但 Assets 不能加载,因此该应用程序无法正常工作。

Laravel应用程序和VueJS应用程序位于通过docker-compose启动的两个单独的Docker容器中。

我尝试在“位置/ admin {}”部分中尝试使用“try_files”的各种组合,但到目前为止没有成功。这些调整导致所有内容均出现404错误或500个服务器错误。

这是我的Nginx conf:

server {
listen 80;
listen [::]:80;

client_max_body_size 200M;
disable_symlinks off;
server_tokens off;
index index.php;
root /var/www/public;

location /admin {
root /var/www/public/dist;
proxy_pass http://admin:8001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}

location / {
try_files $uri /index.php$is_args$args;
}

location ~ \.php {
try_files $uri =404;
fastcgi_pass http://app:9000;

fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
fastcgi_param REALPATHTEST $realpath_root;
internal;
}
}

以下屏幕快照显示index.html加载正常,但js&css Assets 未加载:

Chrome中的HTML输出:

HTML output in Chrome

页面结果为200, Assets 错误为404:

200 Result for page and 404 errors for assets

任何帮助将非常感激。

最佳答案

最后,我需要做的是:

location /admin {
rewrite ^/admin(.*) /$1 break;
proxy_pass http://admin:8001;
}

所以我最终的nginx配置是:
server {
listen 80 default_server;
listen [::]:80 default_server;

client_max_body_size 200M;
disable_symlinks off;
server_tokens off;
index index.php;
root /var/www/public;

location /admin {
rewrite ^/admin(.*) /$1 break;
proxy_pass http://admin:8001;
}

location / {
try_files $uri /index.php$is_args$args;
}

location ~ \.php {
try_files $uri =404;
fastcgi_pass app:9000;

fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
fastcgi_param REALPATHTEST $realpath_root;
internal;
}
}

我真的希望这可以节省一些时间!

关于laravel - Docker Laravel Vuejs Nginx发布加载 Assets ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54096745/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com