nginx过滤url实现前台js的配置问题
2015-09-24 20:01
633 查看
基于摘要里的,在Java后台实现很方便,只需要读取properties配置文件即可
但是在前台js,js是在浏览器里执行的,无法读取服务器上的配置,除非请求后台,但是每次的开销也是挺大的,所以这个想法被ps了
这时候可以利用nginx,前台静态页面是部署在nginx中,所以我们可以配置nginx过滤某个js的url,然后指向我们需要的文件
前台代码
配置文件(生产环境配置和开发环境的配置在不同路径下,但是文件名同名)
nginx的配置
前一个server配置的是生产环境,正常配置
后一个,过滤flower.js,定向到另外一个文件夹下
访问www.company.com就是正式环境
访问debug.company.com就是开发环境了
这样就可以实现配置的功能了
但是在前台js,js是在浏览器里执行的,无法读取服务器上的配置,除非请求后台,但是每次的开销也是挺大的,所以这个想法被ps了
这时候可以利用nginx,前台静态页面是部署在nginx中,所以我们可以配置nginx过滤某个js的url,然后指向我们需要的文件
前台代码
index.html <!-- 即配置文件 --> <script src="/config.js"></script> <!-- 动态加载js --> <script type="application/javascript"> if (config.devMode == 'dev') { loadJs("开发环境的js"); } else { loadJs("开发环境的js"); } function loadJs(url, callback) { // 实现 } </script>
配置文件(生产环境配置和开发环境的配置在不同路径下,但是文件名同名)
var config = { // 或者 prd devMode: 'dev', // 还可以配置请求后台的url前缀 serverUrl: 'http://dev.company.com' // serverUrl: 'http://api.company.com' }
nginx的配置
server { listen 80; server_name www.company.com; location / { root /Users/sunhao/Documents/company/project; index index.html; try_files $uri $uri/ /index.html; expires -1; } } server { listen 80; server_name debug.company.com; location / { root /Users/sunhao/Documents/company/project; index index.html; try_files $uri $uri/ /index.html; expires -1; } location ~ .flower\.js$ { root /Users/sunhao/Documents/company/project/js; } }
前一个server配置的是生产环境,正常配置
后一个,过滤flower.js,定向到另外一个文件夹下
访问www.company.com就是正式环境
访问debug.company.com就是开发环境了
这样就可以实现配置的功能了
相关文章推荐
- nginx 配置--限定用户访问,防止非80端口转80技巧
- nginx设置动静分离
- nginx rewrite伪静态后产生的错误链接
- Nginx配置文件详细说明
- 为什么Nginx的性能要比Apache高很多?
- Apache和Nginx运行原理解析
- nginx不记录不需要的访问日志
- nginx日志切割
- nginx监听非80端口没权限的问题
- 普通用户启动nginx服务
- 配置nginx worker 进程数
- CentOS+Nginx+PHP+MySQL 搭建高性能的web服务器
- sendfile()对Nginx性能的提升
- 更改掉nginx默认的用户和用户组
- Nginx + IIS 实现负载均衡
- nginx双向认证客户端配置
- nginx搭建过程
- nginx 转帖
- 隐藏nginx 版本等信息
- "Nginx服务器在使用HTML5