我这里就写两个例子:
Eg1:电商网站分前台和后台,后台维护商品和供应商即后台上传图片前台展示,现在要求前台部署在A服务器,前台部署在B服务器上且用nginx做图片服务器并将nginx服务装在A服务器上,图片上传到A服务器本地xx文件夹下。 变压器蝶阀这中情况就很简单,我们只需要将后台上传图片的url设置为A服务本地创建的xx文件,并修改conf/f中
server {
listen 80;
server_name127.0.0.1;
#charset koi8-r;
#access_log logs/host.access.log main;
location /ekaImage/{
alias D:\ekaImage;
螺母热熔机 }
前台访问时直接A服务IP:ekaImage/XX/xx.jpg即可
Eg2:后台服务部署在A服务器上,前台部署在B服务器,图片服务器部署在C服务器上
我们是单独将图片上传写了个APP部署在C服务器然后后台上传图片是调C服务器部署的图片服务器应用提供的上传图片的方法并将图片存放在C服务器的本地文件夹xxx下且在f里修改为C服务器IP,前台访问时直接按http:+C服务器IP+文件路径+图片路径
图片服务器应用:
packageinx.service;
importjava.io.File;
importjava.io.FileOutputStream;
importjava.io.IOException;
importjava.util.Iterator;
importjava.util.List;
importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
importorg.apachemons.fileupload.FileItem;
importorg.apachemons.fileupload.FileItemFactory;
importorg.apachemons.fileupload.FileUploadException;
importorg.apachemons.fileupload.disk.DiskFileItemFactory;
importorg.apachemons.fileupload.servlet.ServletFileUpload;
import org.apache.log4j.Logger;
/**
* Servlet implementation class nginxServlet
*/
publicclassnginxServletextendsHttpServlet {
private Logger logger = Logger.getLogger(nginxServlet.class);
privatestaticfinallongserialVersionUID = 1L;
/**
* @seeHttpServlet#HttpServlet()
*/
publicnginxServlet() {
super();
logger.info(" nginxServletinit .......... ");
}
/**
* @seeHttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protectedvoiddoGet(HttpServletRequest request, HttpServletResponse response) thr
owsServletException, IOException {
logger.info(" nginxServletdoGet ............................ ");
doPost(request,response);
}
/**
* @seeHttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protectedvoiddoPost(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException {
logger.info(" nginxServletdoPost ............................ ");
FileItemFactory factory = new制备乙酸乙酯的装置DiskFileItemFactory();
ServletFileUpload upload = newServletFileUpload(factory);
try {
List items = upload.parseRequest(request);
Iteratoriter = items.iterator();
while (iter.hasNext()) {
FileItem item = (FileItem) ();
if (item.isFormField()) {
//普通文本信息处理
String paramName = FieldName();
String paramValue = String();
logger.info(paramName + ":"衣帽 + paramValue);
} else {
//上传文件信息处理
String fileName= Name();
String filePath="";
if(fileName.indexOf("/")!=-1){
filePath = fileName.substring(0,fileName.lastIndexOf("/"));
fileName = fileName.substring(fileName.lastIndexOf("/"),fileName.length());
}
logger.info("item : "+Name());
logger.info(" fname : "+fileName);
logger.info(" path : "+filePath);
File f = newFile(filePath);
if(!f.exists()){
f.mkdirs();
}
byte[] data = ();
FileOutputStreamfos = newName());
fos.write(data);
fos.close();
}
}
} catch (FileUploadException e) {
logger.error(" nginxServletdoPOST exception :"+e.getMessage());
e.printStackTrace();
}
}
}
l:
<servlet>
<description></description>
<display-name>nginxServlet</display-name>
<servlet-name>nginxServlet</servlet-name>
<servlet-class>inxServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>nginxServlet</servlet-name>led柔性霓虹灯
<丙烯运输url-pattern>/nginxServlet</url-pattern>
</servlet-mapping>
配置f
server {
listen 80;
server_name127.0.0.1;
#charset koi8-r;
#access_log logs/host.access.log main;
location /ekaImage/{
alias /wls/ekaImage/;
}
后台服务代码:
#图片服务器
imgIp= 192.168.221.91/ekaImage前台<imgsrc=”${imgIp }”>
#图片上传到哪个地方
uploadFilePath = /wls/ekaImage/
#nginx图片服务器应用
Nginxpath=192.168.221.91:8080/nginxService/nginxServlet
后台上传图片调图片服务器192.168.221.91:8080/nginxService/nginxServlet
如service: