tomcat添加跨域訪問
綁定和解析 在tomcat下面配置域名(如:www.***.com)的時候,同時又不希望客戶通過我們網站的ip或者域名訪問到tomcat默認的root,配製方法如下: 2.在server.xml中將原有的修改為 【程序編程相關:java 理論與實踐:並發在一定程度上使】 1.打開tomc...
㈡ http網頁建立websocket跨域問題,怎麼解決
websocket是htm5提供的一種全雙工通訊的協議。
websocket不存在跨域問題,html網頁通過new Websocket(url,[protocol]);創建對象。
看你的提示應該是使用了ajax請求。
㈢ 如何用CORS來解決JS中跨域的問題
1、CORS的原理:CORS定義一種跨域訪問的機制,可以讓AJAX實現跨域訪問。CORS 允許一個域上的網路應用向另一個域提交跨域 AJAX 請求。實現此功能非常簡單,只需由伺服器發送一個響應標頭即可。
2、tomcat如何配置cors的跨域請求:
在tomcat中,有一個和cors相關的攔截器:CORS Filter
該過濾器可以通過添加必需的訪問控制請求頭Access-Control-*對象來進行跨域。同時還可以對一些請求進行攔截。如果請求是無效的,或者是不被允許的,該請求被拒絕或者禁止。
其在web.xml文件中的基本配置如下:
<filter>
<filter-name>CorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
<init-param>
<param-name>cors.allowed.origins</param-name>
<param-value>
http://localhost:8080,
https://localhost:8443
</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.methods</param-name>
<param-value>
GET,POST,HEAD,OPTIONS,PUT
</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.headers</param-name>
<param-value>
Content-Type,X-Requested-With,accept,Origin,Access-Control-Request-Method,Access-Control-Request-Headers,Access-Control-Allow-Origin
</param-value>
</init-param>
<init-param>
<param-name>cors.exposed.headers</param-name>
<param-value>
Access-Control-Allow-Origin,Access-Control-Allow-Credentials
</param-value>
</init-param>
<init-param>
<param-name>cors.support.credentials</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>cors.preflight.maxage</param-name>
<param-value>10</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/wxrefund/*</url-pattern>
</filter-mapping>
3、cors.allowed.origins:允許訪問資源的源列表。*表示任何來源都可以訪問該資源。否則,只有配置的白名單的來源可以訪問該資源,其中白名單用逗號隔開,如http://localhost:8080,https://localhost:8443。
4、cors.allowed.methods:允許訪問的http請求方法,如GET,POST,HEAD,OPTIONS,PUT等,方法名用逗號隔開。
5、cors.allowed.headers:在實際請求時可使用的請求頭列表,用逗號隔開。如Content-Type,X-Requested-With,accept,Origin,Access-Control-Request-Method,Access-Control-Request-Headers,Access-Control-Allow-Origin。這些頭也將返回作為訪問控制的一部分。
㈣ tomcat部署程序使用域名訪問
方法/步驟
找到tomcat的主目錄,進入conf文件夾,找到server.xml文件,並打開:
7
配置完成,趕緊測試一把吧~我成功了!
㈤ 如何使用tomcat實現跨域
二級域名和頂級域名相同,可以共享cookie。 你可以用memcache或者redis,實現tomcat各個伺服器session同步,基本上可以滿足要求了。
㈥ java中怎樣設置tomcat中conf/context.xml文件解決跨域每次sessionid不一樣問題
在tomcat.6.0.27以上版本,跨域問題有簡單解決方法:
在tomcat 的conf 目錄下面編輯:context.xml
將裡面的Context修改為以下即可:
<ContextsessionCookiePath=""sessionCookieDomain=".×××.cn"/>
問題得到解決
之前的tomcat6跨域解決方法是自己創建jar包。
㈦ 如何再linux中配置tomcat域名訪問
在server.xml中將原有的<Host name=「localhost「 appBase=「webapps「 ……>修改為<Host name=「您要配置的域名(www.***.com)appBase=「webapps「……>
在/conf/Catalina目錄下建立目錄「<您要配置的域名的名稱>」,然後建立ROOT.xml文件,其格式和/conf/localhost目錄下的ROOT.xml一致,但是內容如下:
<?xml version='1.0' encoding='utf-8'?>
<Context displayName="Welcome to the World!" docBase="E:/root/index.jsp" path="">
</Context>
其中docBase中的內容就是你希望的打開您的域名(www.***.com) 的時候映射到的目錄和默認的網頁(如:index.jsp)啟動Tomcat伺服器,就可以直接敲入域名訪問你要訪問的地址了。
㈧ 如何讓伺服器支持跨域
要看伺服器類型,如果伺服器是apache
(1)修改http服務的配置文件:C:\wamp\bin\apache\Apache2.4.4\conf\httpd.conf
把LoadMole headers_mole moles/mod_headers.so 前面的注釋刪除.
(2)添加Header set Access-Control-Allow-Origin *
<Directory />
AllowOverride none
Require all granted
Header set Access-Control-Allow-Origin *
</Directory>
(3)重啟http服務
如果是tomcat,比如spring MVC項目
創建一個過濾器,代碼如下:
Java代碼 收藏代碼
package com.web.filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletResponse;
import com.common.dict.Constant2;
import oa.service.DictionaryParam;
public class SimpleCORSFilter implements Filter{
@Override
public void destroy() {
}
@Override
public void doFilter(ServletRequest req, ServletResponse res,
FilterChain chain) throws IOException, ServletException {
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", DictionaryParam.get(Constant2.DICTIONARY_GROUP_GLOBAL_SETTING, "AccessControlAllowOrigin"));
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "x-requested-with");
chain.doFilter(req, res);
}
@Override
public void init(FilterConfig arg0) throws ServletException {
}
}
關鍵代碼:response.setHeader("Access-Control-Allow-Origin", "*");
<filter>
<filter-name>cors</filter-name>
<filter-class>com.web.filter.SimpleCORSFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>cors</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
這樣伺服器就支持ajax的跨域訪問了.
㈨ tomcat如何通過外網訪問
1、別人的網路是否能ping通?
2、如果是linux,看別人是否能通過ssh或telnet登錄到你的機器。
3、如果前面的都可以的話,如果你的是linux,查看下防火牆是否開放8080埠,粗暴點就是直接關閉防火牆試試。
㈩ tomcat怎麼設置用外網的電腦通過IP訪問
在tomcat中設置<Host name="本機的外網IP"
首先,這個是不需要的
如果你是用model撥號,那麼通過以上設置就可以了
如果你是通過路由器撥號,那麼你需要進入路由器..找到"埠映射"(不同的路由器名字可能不一樣)將來自WAN的訪問"轉接"到你自己電腦上
在埠映射的新項中,選擇該項為TCP,埠為80,然後轉到你自己的 192.168.1.11:80去即可