如何在前台ai去除多余路径URL的前路径

详解nginx过滤url实现前台js的配置问题
&更新时间:日 09:54:56 & 作者:Crazy_Coder
本篇文章主要介绍了nginx过滤url实现前台js的配置问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
我们在开发的过程中,可能需要一些配置,这些配置可能就是仅仅为了开发的方便,比方说,订单过期时间,生产环境需要半小时失效,但是真正开发时,我不可能等上个半小时,所以这个时间这个失效时间我们会写在配置文件中,这样开发环境和生产环境各一套配置,来回切换很方便的.
基于摘要里的,在Java后台实现很方便,只需要读取properties配置文件即可
但是在前台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");
loadJs("开发环境的js");
function loadJs(url, callback) {
配置文件(生产环境配置和开发环境的配置在不同路径下,但是文件名同名)
var config = {
// 或者 prd
devMode: 'dev',
// 还可以配置请求后台的url前缀
serverUrl: 'http://dev.company.com'
// serverUrl: 'http://api.company.com'
nginx的配置
server_name www.company.
location / {
root /Users/sunhao/Documents/company/
index index.
try_files $uri $uri/ /index.
expires -1;
server_name debug.company.
location / {
root /Users/sunhao/Documents/company/
index index.
try_files $uri $uri/ /index.
expires -1;
location ~ .flower\.js$ {
root /Users/sunhao/Documents/company/project/
前一个server配置的是生产环境,正常配置
后一个,过滤flower.js,定向到另外一个文件夹下
访问www.company.com就是正式环境
访问debug.company.com就是开发环境了
这样就可以实现配置的功能了
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具JAVA如何将本地图片变成网络URL 再把URL传给前台_百度知道
JAVA如何将本地图片变成网络URL 再把URL传给前台
JAVA如何将本地图片变成网络URL再把URL传给前台功能就是想把本地图片预览预览要通过URL。。。。返回流的话怎么写能详细点吗?...
JAVA如何将本地图片变成网络URL 再把URL传给前台 功能就是想把本地图片预览 预览要通过URL。。。。
返回流的话怎么写 能详细点吗?
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
yuxiaobopp
yuxiaobopp
采纳数:70
获赞数:294
用js的滤镜功能可以实现不上传图片的预览例如:&1.获取上传图片的路径,一般直接获取input框内的value就行,输入框的类型为filevar&imgPath&=&document.getElementByIdx_x_x(&fileName&).&&&&&&&&&2.获取预览图片的divvar&newPreview&=&document.getElementByIdx_x_x(&preview&);newPreview.style.filter&=&&progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)&;&&newPreview.filters.item(&DXImageTransform.Microsoft.AlphaImageLoader&).src&=&imgPnewPreview.style.width&=&&100px&;&&newPreview.style.height&=&&100px&;上面是最关键的,必须有,否则无法显示,必须指定div的宽高,否则无法显示图片
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。弱问下:前台图片url中的参数问题
[问题点数:30分,结帖人isabell_clover]
本版专家分:70
结帖率 100%
CSDN今日推荐
本版专家分:2817
本版专家分:70
本版专家分:6454
本版专家分:115
本版专家分:1800
本版专家分:1214
本版专家分:70
本版专家分:115
本版专家分:70
匿名用户不能发表回复!
其他相关推荐当前位置浏览文章
前言这篇文章原本是我一年多前看《图解HTTP》做的笔记,但记完后放在文件夹的某个角落一直没管。前段时间撸项目练手的时候,在状态码上碰到了问题,因而又拿了出来翻了翻,同时又在原有的基础上做了些修改,补上了HTTPs的少量东西。这篇文章主要是对HTTP相对重要的知识的少量概括,想要好好学习HTTP还是需要看《图解HTTP》或者者《HTTP权威指南》,才可以构建较为完整的知识体系。最后,你没有猜错,我就是传说中的标题党,但希望这篇文章对你有使用,哪怕是一丁点,2333。1.HTTP简述(出自MDN)超文本传输协议(HTTP)是使用于传输诸如HTML的超媒体文档的应使用层协议。它被设计使用于Web浏览器和Web服务器之间的通信,但它也能使用于其余目的。 HTTP遵循经典的客户端-服务端模型,客户端打开一个连接以发出请求,而后等待它收到服务器端响应。 HTTP是无状态协议,意味着服务器不会在两个请求之间保留任何数据(状态)。尽管通常基于TCP / IP层,但能在任何可靠的传输层上用; 也就是说,一个不会静默丢失消息的协议,如UDP。2.URL和URI我们经常会接触到URL(统一资源定位符),它就是我们使用于访问web的一个字符串地址.而URI对我们来讲就相比照较陌生了,它的名字叫做统一资源标识符(URI)。我们来看看它们具体的区别吧:URI:uniform resource identifier 统一资源标识符,一种资源的标识,它是一种笼统的资源标识,就可以是相对的,也能是绝对的。URL:uniform resource location 统一资源定位符,同时一种资源的标识,但指明了如何定位Locate这个资源。由于它指明了定位的信息,所以必需是绝对的。(我们平常所说的相对地址,其实只是相对于另一个绝对地址而言的)2.1 URLURL的基本格式如下:schema://host[:port#]/path/.../[?query-string][#anchor]格式意义scheme指定低层用的协议(例如:http, https, ftp)hostHTTP服务器的IP地址或者者域名port#HTTP服务器的默认端口是80,这种情况下端口号能省略。假如用了别的端口,必需指明,例如 http://www.cnblogs.com:8080/path访问资源的路径query-string发送给http服务器的数据anchor-锚3.HTTP报文3.1 HTTP报文格式HTTP的报文格式主要分为报文首部和报文主体:image其中的空行使用于区分报文首部和报文主体内容,是由一个回车符和一个换行符组成的。无论是请求报文还是响应报文都需要有报文首部,而报文主体有些请求报文是没有的。而请求报文的一般格式如下:image而响应报文的格式是这样的:image下面是谷歌浏览器的HTTP报文内容,其中request headers形容了请求报文头部的内容,response headers形容了响应报文头部的内容:image其中最常见的属性如下:URL, 即http访问的地址request method, 报文的请求方式status code, 状态码以及状态短语Accept Encoding, 内容编码Connection, 连接方式Cookie, 增加的cookie内容Host, 目标主机User-Agent, 客户端浏览器的相关信息Set-Cookie, 指定想要在Cookie中保存的内容接下来就聊一聊这些属性的作使用3.2 HTTP请求方式(request method)——GET POST发送HTTP的方式有很多,但最常使用的还是POST和GET。GET:GET方法能使用来请求访问已经被URL识别的资源。指定的资源经过服务端解析后返回响应的内容。简单来说,就是请求的资源是文本的话,那么就保持原样返回.imagePOST:POST方法能使用来传输实体的主体。image这两者的区别主要如下:用目标不同POST与GET都使用于获取信息,但是GET方式仅仅是查询,并不对服务器上的内容产生任何作使用结果;每次GET的内容都是相同的。POST则常使用于发送肯定的内容进行某些修改操作。大小不同因为不同的浏览器对URL的长度大小有肯定的字符限制,因而因为GET方式放在URL的首部中,自然也跟着首先,但是具体的大小要依浏览器而定。POST方式则是把内容放在报文内容中,因而只需报文的内容没有限制,它的大小就没有限制。安全性不同上面也说了GET是直接增加到URL后面的,直接即可以在URL中看到内容。而POST是放在报文内部的,使用户无法直接看到。总的来说,GET使用于获取某个内容,POST使用于提交某种数据请求,从用场景来看,一般使用户注册的内容是私密的,应该用POST方式来保持私密,而当需要查询某个内容时,需要快速响应,则用GET。3.3 status code状态码状态码通常就是服务器端对客户端说的话,分类如下:状态码含义1服务器收到请求,需要请求者继续执行操作2成功,操作被成功接收并解决3重新定向,需要进一步的操作以完成请求4客户端错误,请求包含语法错误或者无法完成请求5服务器错误,服务器在解决请求的过程中发生了错误常见的状态码:200 通常的成功 OKGET:请求的对应资源会作为响应返回。响应将包含形容或者操作的结果。POST:返回解决对应请求的结果。204 成功解决请求,没有返回任何内容 No Content表示服务器接收到的请求已经解决完毕,但是服务器不需要返回响应。比方,客户端是浏览器的话,那么浏览器显示的页面不会发生升级。206 Partial Content成功解决了部分GET请求301 Moved Permanently请求的网页已永久移动到新位置,永久性重定向302 Found网站临时性重定向,暂时不可以访问(备案、被查)303 See Other该状态码表示因为请求对应的资源存在另一个URI,并指定必需用GET方法定向获取请求的资源。和302不同的是,302是不会改变上次的请求方法304 Not Modified访问不了,并返回和上次一样的话,表示资源未被修改过,还是和上次访问时一样。307 Temporary Redirect临时重定向,和302、303相似,不同的是,不会指定客户端要使用什么样的方法请求,400 Bad Request表示客户端中存在语法错误,导致服务器无法了解该请求。客户端需要修改请求的内容后再次发送请求。401 Unauthorized即可使用户没有必要的凭据。该状态码表示当前请求需要使用户验证。403 Forbidden服务器已经了解请求,但是拒绝执行它。404 Not Found服务器找不到请求的网页。500 Internal Server Error服务器遇到错误,无法完成请求。503 Service Unavailable因为临时的服务器维护或者者过载,服务器当前无法解决请求。这个状况是暂时的.3.4 内容编码 Accept Encoding因为有些报文的内容会过大,为了减少传输时间,HTTP会采取少量压缩的措施,例如上面的报文信息中,Accept-Encoding就定义了内容编码的格式gzip。总的来说内容编码的格式有以下几种:gzip:GNU压缩格式compress:UNIX系统的标准压缩格式deflate:是一种同时用了LZ77和哈夫曼编码的无损失压缩格式identity:不进行压缩3.5 持久化——connection正常发送HTTP时,我们需要建立TCP的连接,而后再发送报文:image假如每次都要发送HTTP报文都需要经历上面的拿过过程,无疑将会消耗很多时间在建立和断开连接的过程中,因而HTTP用了connection属性,使用于指定连接的方式,当当设置成keep-alive时,就会建立一条持久化的连接。这样就不需要每次都建立连接在中断连接:image(HTTP1.1中connection默认开启keep-alive)3.6 无状态的HTTP——cookie因为HTTP是一种无状态的协议,这是因为Web服务器要面对很多浏览器的并发访问,为了提高Web服务器对并发访问的解决可以力,在设计HTTP协议时规定Web服务器发送HTTP应答报文和文档时,不保存发出请求的Web浏览器进程的任何状态信息,从而减轻服务器端的负载,同时无状态也减小了HTTP请求的开销。但当有些场景需要时刻记住使用户的信息时,无状态很显著不可以满足需求,因而HTTP提供了cookie来处理这个问题,cookie技术通过在请求和相应报文中写入cookie信息来控制客户端的状态。cookie会根据从服务端发送的相应报文内的一个叫做set-cookie的首部字段信息,通知客户端保存cookie。当下次客户端再往服务器发送请求的时候,客户端会自动在请求头加入cookie值后发送出去。在没有cookie状态下的请求:image当存有cookie后的请求:image简单来说Cookie是一种由服务器端确定,并保存在客户端浏览器中的内容。这样就与每次都去增加使用户的信息,请求会自动增加cookie中对应的内容。(关于浏览器端的数据存储感兴趣的能看下这篇文章::聊一聊常见的浏览器端数据存储方案)3.7 范围请求在少量场景下,我们在用HTTP报文请求少量很大的图片时,加载过程往往会很慢。(比方少量摄影网站)这时候我们就会发现少量图片是一块一块加载的。这是应为设置了HTTP请求的长度,从而分块的加载资源。在请求报文中用Range属性,在响应报文中用Content-Type属性都能进行指定肯定自己的HTTP请求。3.8 报文首部总结image(图转自:http://www.cnblogs.com/xing901022/p/4311987.html)4.HTTP方法HTTP 支持几种不同的请求命令,这些命令被称为 HTTP 方法(HTTP method)。每条 HTTP 请求报文都包含一个方法。这个方法会告诉服务器要执行什么动作(获取一个 Web 页面、运行一个网关程序、删除一个文件等)。下表是少量常见的HTTP方法:HTTP方法形容GET从服务器向客户端发送命名资源PUT将来自客户端的数据存储到一个命名的服务器资源中去DELETE从服务器中删除命名资源POST将客户端数据发送到一个服务器网关应使用程序HEAD仅发送命名资源响应中的 HTTP 首部(GET和PUT已在上面探讨过了,这里就不在探讨了)4.1、PUT传输文件PUT方法使用于传输文件,就像FTP协议的翁建上传一样,要求在请求报文的主题中包含文件内容,而后保存到请求URI指定的位置。因为PUT方法不带验证机制,任何人都能任何人都能上传文件,存在安全性问题,因而一般的web网站不适使用该方法。4.2、DELETE删除文件DELETE方法使用来删除文件,是与put相反的方法,DELETE方法按照请求url删除指定的资源。其本质和PUT方法一样不带验证机制,所以建议少使用DELETE方法。4.3、HEAD获取报文首部HEAD和GET方法一样,只是不返回报文主体部分,通常使用于确认url的有效性及资源升级的日期时间等。image5.HTTPS5.1 什么是HTTPSHTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单来说就是是HTTP的安全版本,即在HTTP下加入SSL层,HTTPS的安全基石是SSL,因而加密的详细内容就需要SSL。 它现在已经被广泛应使用,比方GitHub,支付宝,掘金等。5.2 为什么需要HTTPS这是因为HTTP有这么几个缺点:传输的时候用明文,这显然会被不法者截取干少量见不得人的勾当。没有认证机制,这样我们即可以伪造少量HTTP访问,这显然会造成少量困扰。比方Jmeter就是典型的例子,伪造一大堆的HTTP URL而后压力测试,这也就是DOS攻击的一种。无法验证报文的完整性,比方一个HTTP的报文已经被不法者截取并且篡改,服务器端也无法验证。5.3 HTTP 与 HTTPS 的区别正是因为以上这些缺点,HTTPS作出了以下少量改变:HTTP 是明文传输,HTTPS 通过 SSL\TLS 进行了加密HTTP 的端口号是 80,HTTPS 是 443HTTPS 需要到 CA 申请证书,一般免费证书很少,需要交费-HTTPS 的连接很简单,是无状态的;HTTPS 协议是由 SSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议,比 HTTP 协议安全。5.4 HTTPS的缺陷能说HTTPS相对于HTTP就是套上了黄金甲的圣斗士,变了身的奥特曼,沉睡了的毛利小五郎,不仅仅提升了安全,还提升了逼格。但HTTPS也有少量缺陷:通信的速度变慢,因为需要加密,一个握手就多了好几个往返对使用户的机器负载的添加。(说出来你们可可以不信,我们学校一到晚上,使用HTTPS协议的网站基本上都上不了)image6. HTTP认证有少量网站需要使用户的登录从而获取使用户的个人信息来进行接下来的操作,因而需要随时知道这些消息,但是一定不可以每次都让使用户输入使用户密码,这样会让使用户感觉很不爽,因而HTTP也自带了认证的功可以,认证方式主要如下:image6.1 BASIC认证其中BASIC认证是最简单的认证,大致过程如下:客户端访问某URL。服务器端返回401状态码,提醒使用户输入使用户名密码。使用户输入使用户名密码,通过BASE64编码传输。服务器通过认证,返回状态码200但它有以下缺陷:仅仅通过BASE64编码,其实还是属于明文传输,安全性不高有的浏览器不支持注销6.2 DIGEST认证正是因为BASIC认证存在弱点,因而从HTTP/1.1起就有了DIGEST认证,DIGEST认证同样用质询/响应的方式,但不会像BASIC认证那样直接明文发送密码。image6.3 SSL认证(比较常见)SSL客户端认证是借由HTTPS的客户端证书完成认证的方式。凭借客户端证书认证,服务器可确认访问能否来自已登录的客户端。SSL客户端认证的步骤:服务器接收到需要认证资源的请求时,服务器会发送CertificateRequest报文,要求客户端提供客户端证书。客户端将客户端证书信息以Client Certificate报文方式发送给服务器。服务器验证客户端证书验证通过后才可以领取证书内客户端的公开密钥,而后开始HTTPS加密通信。像支付宝,网银之类对安全要求很高的网站,在登录时,都需要下载一个数字认证,这个数字认证就属于一种SSL客户端的验证。但它的缺点也很显著,需要手动下载,对于现在越来越懒的网民们来讲会感觉很麻烦(包括我)6.4 表单认证(最常使用的)最后一种认证方式是最常见的,我们能通过cookie或者session来进行认证。Session管理和Cookie应使用的结合我前面提到过,HTTP是无状态协议,无法实现状态管理,因而有了cookie。我们即可以用Cookie来管理Session(会话),以弥补HTTP协议中不存在的状态管理功可以。认证步骤:客户端把使用户的ID和密码等相关信息放入报文的实体部分,而后通常以POST请求的方式发送给服务器。服务器会发放使用以识别使用户的Session ID。通过验证从客户端发送过来的登录信息进行身份认证,将使用户的认证状态和Session ID绑定后记录在服务器端。客户端接收到Session ID后,会将其作为Cookie保存在本地。下次向服务器发送请求时,浏览器自动发送Cookie,Session ID会随之发送到服务器。服务端通过验证接收到的Session ID识别使用户和其认证状态,而后使用户就可以执行特定的操作了。参考资料:《图解HTTP》https://juejin.im/post/59e4cd02f4acahttp://www.cnblogs.com/xing901022/p/4309840.htmljeecms前台超链接路径是.html还是.jspx_百度知道
jeecms前台超链接路径是.html还是.jspx
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
xiangjuan314
来自电脑网络类芝麻团
xiangjuan314
采纳数:23844
获赞数:20560
参与团队:
修改后台访问路径1,修改后台访问路径:如:改:修改方法:1、
将xml中的&servlet-mapping&
&servlet-name&JeeCmsAdmin&/servlet-name&
&url-pattern&/jeecms/admin/*&/url-pattern&&/servlet-mapping&改为&servlet-mapping&
&servlet-name&JeeCmsAdmin&/servlet-name&
&url-pattern&/hailou/*&/url-pattern&&/servlet-mapping&2、
将jeecms-servlet-admin.xml中的&property name=&loginUrl& value=&/jeecms/admin/login.do&/&&property name=&returnUrl& value=&/jeecms/admin/index.do&/&改为&property name=&loginUrl& value=&/hailou/login.do&/&&property name=&returnUrl& value=&/hailou/index.do&/&&entry key=&appBase& value=&/jeecms/admin&/&改为&entry key=&appBase& value=&/hailou&/&3、
将这个AdminContextInterceptor类中的getURI(HttpServletRequest request)方法中的变量count = 2改为count = 12、内容页面打开慢的原因
这是因为jeecms员工在做页面时,有四个文件中将css文件引的地方是将这个去了就行,所涉及的页面有四个,产品内容.html,新闻内容.html,视频内容.html,会员注册页.html页面3、启动服务器的时候抛出dic home should not be a file, but a directory!分析问题:这是因为PaodingMaker.getFile()方法中采用了老版本的java.net.URL.getFile(),不能够识别中文或者空格,只有采用URL.toURI().getPath()才能识别汉字与空格。解决问题:需要修改一下Paoding中的代码了。找到PaodingMaker.java的setDicHomeProperties方法,修改File dicHomeFile = getFile(dicHome);为File dicHomeFile2 = getFile(dicHome);
String path=&&;
path = URLDecoder.decode(dicHomeFile2.getPath(),&UTF-8&);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
File dicHomeFile = new File(path);
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。

我要回帖

更多关于 URL的正确路径 的文章

 

随机推荐