nginx实现多语言跳转不同的url
nginx实现多语言跳转不同的url
server {
listen 80;
server_name www.text.com;
location / {
if ($http_accept_language ~* ^zh) {
set $lang zh_CN;
rewrite (.*) https://www.baidu.com$1 permanent;
break;
}
if ($http_accept_language ~* ^ko) {
set $lang ko_KR;
rewrite (.*) https://www.aliyun.com$1 permanent;
break;
}
if ($http_accept_language ~* ^en) {
set $lang en_US;
rewrite (.*) https://www.google.com$1 permanent;
break;
}
}
}
测试
curl -I http://www.text.com -H "Accept-Language:ko"
curl -I http://www.text.com -H "Accept-Language:zh"
curl -I http://www.text.com -H "Accept-Language:en"
$ curl -I http://www.text.com -H "Accept-Language:zh"
HTTP/1.1 301 Moved Permanently
Server: WPWS/1.0.0
Date: Wed, 06 Mar 2019 06:13:29 GMT
Content-Type: text/html
Content-Length: 281
Connection: keep-alive
Location: https://www.baidu.com/
Expires: Sat, 16 Mar 2019 06:13:29 GMT
Cache-Control: max-age=864000
$ curl -I http://www.text.com -H "Accept-Language:ko"
HTTP/1.1 301 Moved Permanently
Server: WPWS/1.0.0
Date: Wed, 06 Mar 2019 06:14:05 GMT
Content-Type: text/html
Content-Length: 281
Connection: keep-alive
Location: https://www.aliyun.com/
Expires: Sat, 16 Mar 2019 06:14:05 GMT
Cache-Control: max-age=864000
$ curl -I http://www.text.com -H "Accept-Language:en"
HTTP/1.1 301 Moved Permanently
Server: WPWS/1.0.0
Date: Wed, 06 Mar 2019 06:20:56 GMT
Content-Type: text/html
Content-Length: 281
Connection: keep-alive
Location: https://www.google.com/
Expires: Sat, 16 Mar 2019 06:20:56 GMT
Cache-Control: max-age=864000
nginx实现多语言跳转不同的url的更多相关文章
- nginx配置http强制跳转https
nginx配置http强制跳转https 网站添加了https证书后,当http方式访问网站时就会报404错误,所以需要做http到https的强制跳转设置. 一.采用nginx的rewrite方法 ...
- NGINX比Apache的性能高是因为NGINX由C语言开发,而Apache由C++开发
事实上,NGINX比Apache的性能高是因为NGINX由C语言开发,而Apache由C++开发.因此,NGINX效率大概是Apache的10倍左右
- Nginx 配置 http 强制跳转到 https
个人真实配置 架构:Nginx 反向代理 + Nginx 前端(LNMP) 在 Nginx 反向代理的 虚拟机主机配置文件中,作如下配置: upstream ilexa_cn { server 192 ...
- Nginx隐藏式跳转(浏览器URL跳转后保持不变) - 运维笔记
Nginx的隐藏式跳转可以实现将请求跳转到另一个网站的页面,并且浏览器中URL保持不变.Nginx配置中需要使用rewrite规则.下面提供两个示例来说明这种跳转需求的配置: 一.配置示例1将请求路径 ...
- 域名解析中的cname解析和显性URL跳转和隐性URL跳转三者有什么区别
通俗的来讲,cname解析还是属于dns解析,只是把某个域名解析到另外一个域名对应的某个IP的空间中,所以还需要在服务器端(比如nginx)做域名解析(比如把baidu.com做一个cname解析到i ...
- 用Java和Nodejs获取http30X跳转后的url
用Java和Nodejs获取http30X跳转后的url 转 https://calfgz.github.io/blog/2018/05/http-redirect-java-node.html 30 ...
- 获取经过跳转后的url地址
粗略一算,不写code已经好几个月了. 昨日受兄弟所托,为他写了一个小小的程序. 程序功能: 自动获取跳转后的Url地址 如下图所示: (newUrl.txt为转换后的地址信息...) 实现过程: 每 ...
- 【转】js onclick用法:跳转到指定URL
使用onclick跳转到其他页面/跳转到指定url ☆如果是本页显示可以直接用location,方法如下: ①onclick="javascript:window.location.hr ...
- webview缓存及跳转时截取url地址、监听页面变化
缓存及一些设定 我在做一些项目时,h5做的项目手机浏览器能使用,但是在搬到webview时候不能用,这个时候通过查阅资料,原来是webview没有设定好,包括缓存.缓存大小及路径等等 mWebview ...
随机推荐
- static 和final
1.static static关键字可以用来修饰类的变量,方法和内部类.static是静态的意思,也是全局的意思,它定义的东西属于全局,与类相关,不与具体实例相关.就是说它调用的时候,只是 ...
- 卡在Initializing Spring root WebApplicationContext
1,多数情况下是连接数据库时出现问题, 2,如果使用mybatis 请查看 xml映射文件是否和对应的java 的dao文件名字相同,或者<mapper namespace="com. ...
- php 与java安卓客户端的查询交互
PHP 服务器端: function getids() { $this->output->set_header('Content-Type: application/json; chars ...
- TSQL--约束基础和Demo
--============================================================ SQL SERVER 中使用constraint和role来对数据进行限制 ...
- C#高级特性:动态绑定
C#高级特性:动态绑定 动态绑定 动态绑定将类型绑定(类型解析.成员和操作过程)从编译时推迟到了运行时.在编译时,如果程序员知道某个特定函数.成员的存在而编译器不知道,那么这种操作是非常有用的,这种情 ...
- SSH密钥登陆
参考: SSH公钥登录原理 比如git可以生成公钥,然后用有权限的账户把他加到仓库上,以后就可以通过公钥登陆了.不需要像https那样需要有账号,但是权限管理就不细了. 有时候如果仓库上添加了多个公钥 ...
- 写一个Singleton出来。
单例模式是一种创建模式. 这种模式只涉及一个单独的类,它负责创建自己的对象. 该类确保只创建单个对象. 这个类提供了一种访问其唯一对象的方法. 例子: MainWindow类的构造函数是私有的,并且有 ...
- C#中数组作为参数传递的问题
原则:尽可能控制对数据的修改,如果可以预测某个数据不会或不应该被改变,就要对其控制,而不要期望使用这个数据的调用者不会改变其值. 如果参数在使用过程中被意外修改,将会带来不可预知的结果,而且这种错误很 ...
- 原生态js回顶部
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- kali linux之拒绝服务攻击工具
hping3 几乎可以定制发送任何TCP/IP数据包,用于测试FW,端口扫描,性能测试 -c - 计数包计数 -i - interval wait(uX表示X微秒,例如-i u1000) ...