nginx - Nginx:如何将 JS/CSS http 链接重定向到其他域?
问题描述
我有几个指向 js/css 文件的 HTTP 链接。我想将它重定向到其他位置。下面提供的示例:
重定向自:
https://ex.example.com/js/file1.js
https://ex.example.com/css/file2.css
https://ex.example.com/css/folder1/file3.css
重定向到:
https://ex2.example.com/js/file1.js
https://ex2.example.com/css/file2.css
https://ex2.example.com/css/folder1/file3.css
我在 nginx.conf 中尝试了以下设置。但它不起作用。
server {
listen 443 ssl;
server_name ex.example.com;
location / {
return 301 https://ex2.example.com;
}
location ~* \.(css)$ {
root https://ex2.example.com/css;
}
location ~* \.(js)$ {
root https://ex2.example.com/js;
}
#location /css/ {
# return 301 https://ex2.example.com/css;
#}
#location /js/ {
# return 301 https://ex2.example.com/js;
#}
ssl_certificate /etc/ssl/ssl-bundle.crt;
ssl_certificate_key /etc/ssl/myserver.key;
client_max_body_size 5M;
ssl_prefer_server_ciphers on;
}
}
请帮我解决一下这个。
解决方案
使用以下配置:
server {
listen 443 ssl;
server_name ex.example.com;
location / {
return 301 https://ex2.example.com/$request_uri;
}
ssl_certificate /etc/ssl/ssl-bundle.crt;
ssl_certificate_key /etc/ssl/myserver.key;
client_max_body_size 5M;
ssl_prefer_server_ciphers on;
}
}
/$request_uri
将自动占用先前的请求 uri 并将其添加到重定向 uri。您不需要匹配正则表达式并进行单独的重定向。
推荐阅读
- html - 奥丁项目——谷歌主页项目
- linux - 使用 Canon ImageClass D1320 打印机设置 CUPS,CUPS 无法识别?
- css - 如何正确在图像上使用绝对和相对定位?
- java - infixToPostfix 算法但没有操作优先级
- java - 导航抽屉活动未加载所有片段
- powershell - 获取电子邮件组成员的 PowerShell 命令 - Get-ADGroupMember 不起作用
- c# - 删除 DirectoryName 的一部分
- laravel - 通过 app() 获取/迭代 laravel 服务容器中的数据
- swift - SwiftUI - 将图像保存到共享表会导致图像保存模糊/低分辨率
- python-3.x - 为什么我安装的 python 模块没有在脚本中导入?