mirror of
https://github.com/xVRVx/autoXRAY.git
synced 2026-08-31 02:55:32 +00:00
Add files via upload
This commit is contained in:
@@ -602,7 +602,7 @@ link1="vless://${xray_uuid_vrv}@$DOMAIN:443?security=reality&type=tcp&headerType
|
||||
|
||||
link2="vless://${xray_uuid_vrv}@$DOMAIN:443?security=reality&type=xhttp&headerType=&path=%2F$path_xhttp&host=&mode=auto&extra=%7B%22xmux%22%3A%7B%22cMaxReuseTimes%22%3A%221000-3000%22%2C%22maxConcurrency%22%3A%223-5%22%2C%22maxConnections%22%3A0%2C%22hKeepAlivePeriod%22%3A0%2C%22hMaxRequestTimes%22%3A%22400-700%22%2C%22hMaxReusableSecs%22%3A%221200-1800%22%7D%2C%22headers%22%3A%7B%7D%2C%22noGRPCHeader%22%3Afalse%2C%22xPaddingBytes%22%3A%22400-800%22%2C%22scMaxEachPostBytes%22%3A1500000%2C%22scMinPostsIntervalMs%22%3A20%2C%22scStreamUpServerSecs%22%3A%2260-240%22%7D&sni=$DOMAIN&fp=chrome&pbk=${xray_publicKey_vrv}&sid=${xray_shortIds_vrv}&spx=%2F#vlessXHTTPrealityEXTRA-autoXRAY"
|
||||
|
||||
ENCODED_STRING=$(echo -n "2022-blake3-chacha20-poly1305:${xray_sspasw_vrv}" | base64)
|
||||
ENCODED_STRING=$(echo -n "2022-blake3-chacha20-poly1305:${xray_sspasw_vrv}" | base64 -w 0)
|
||||
linkSS="ss://$ENCODED_STRING@${DOMAIN}:8443#Shadowsocks2022-autoXRAY"
|
||||
|
||||
|
||||
@@ -610,16 +610,158 @@ configListLink="https://$DOMAIN/$path_subpage.html"
|
||||
|
||||
# Создаем html файл с конфигами
|
||||
cat > "$WEB_PATH/$path_subpage.html" <<EOF
|
||||
<!DOCTYPE html><html lang="ru"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1.0"><meta name="robots" content="noindex,nofollow,noarchive,nosnippet,noimageindex"><meta name="googlebot" content="noindex,nofollow,noarchive,nosnippet,noimageindex"><meta name="bingbot" content="noindex,nofollow,noarchive,nosnippet,noimageindex"><title>AutoXRAY configs</title><style>body{font-family:monospace;background:#121212;color:#e0e0e0;padding:20px;max-width:800px;margin:0 auto}h3{color:#82aaff;border-bottom:1px solid #333;padding-bottom:10px;margin-top:30px}.box{background:#1e1e1e;padding:15px;border-radius:8px;word-break:break-all;border:1px solid #333;margin-bottom:10px}.box a{color:#c3e88d;text-decoration:none;display:block;margin-top:10px;font-weight:700}.box a:hover{text-decoration:underline}.btn-group{display:flex;flex-wrap:wrap;gap:15px;margin-top:25px}.btn{flex:1;min-width:250px;background-color:#2c2c2c;color:#c3e88d;border:1px solid #c3e88d;padding:15px;text-align:center;border-radius:8px;text-decoration:none;font-weight:700;transition:all 0.3s ease;display:flex;align-items:center;justify-content:center}.btn:hover{background-color:#c3e88d;color:#121212;cursor:pointer;box-shadow:0 0 10px rgba(195,232,141,.3)}.btn.download{border-color:#82aaff;color:#82aaff}.btn.download:hover{background-color:#82aaff;color:#121212;box-shadow:0 0 10px rgba(130,170,255,.3)}</style></head>
|
||||
<!DOCTYPE html>
|
||||
<html lang="ru">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||
<meta name="robots" content="noindex,nofollow,noarchive,nosnippet,noimageindex">
|
||||
<title>AutoXRAY configs</title>
|
||||
<style>
|
||||
body { font-family: monospace; background: #121212; color: #e0e0e0; padding: 20px; max-width: 800px; margin: 0 auto; }
|
||||
h3 { color: #82aaff; border-bottom: 1px solid #333; padding-bottom: 10px; margin-top: 30px; }
|
||||
h2 { color: #c3e88d; border-top: 2px solid #333; padding-top: 20px; margin-top: 40px; }
|
||||
|
||||
/* Стили для строки с конфигом */
|
||||
.config-row {
|
||||
background: #1e1e1e;
|
||||
border: 1px solid #333;
|
||||
border-radius: 8px;
|
||||
padding: 10px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
/* Контейнер для текста ссылки */
|
||||
.config-code {
|
||||
flex: 1;
|
||||
white-space: nowrap;
|
||||
overflow-x: auto;
|
||||
padding: 10px;
|
||||
background: #121212;
|
||||
border-radius: 4px;
|
||||
color: #c3e88d;
|
||||
font-size: 14px;
|
||||
scrollbar-width: thin;
|
||||
scrollbar-color: #333 #121212;
|
||||
}
|
||||
|
||||
/* Блок всех конфигов (многострочный с прокруткой) */
|
||||
#cAll {
|
||||
white-space: pre-wrap;
|
||||
word-break: break-all;
|
||||
max-height: 90px;
|
||||
overflow-y: auto;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
/* Кнопка копирования */
|
||||
.copy-btn {
|
||||
background: #2c2c2c;
|
||||
color: #e0e0e0;
|
||||
border: 1px solid #555;
|
||||
padding: 10px 15px;
|
||||
border-radius: 6px;
|
||||
cursor: pointer;
|
||||
font-weight: bold;
|
||||
transition: all 0.2s;
|
||||
min-width: 100px;
|
||||
height: 100%;
|
||||
align-self: flex-start;
|
||||
}
|
||||
.copy-btn:hover {
|
||||
background: #c3e88d;
|
||||
color: #121212;
|
||||
border-color: #c3e88d;
|
||||
}
|
||||
.copy-btn:active {
|
||||
transform: translateY(2px);
|
||||
}
|
||||
|
||||
/* Кнопки ссылок (HAPP, TG) */
|
||||
.btn-group { display: flex; flex-wrap: wrap; gap: 15px; margin-top: 15px; margin-bottom: 25px; }
|
||||
.btn { flex: 1; min-width: 250px; background-color: #2c2c2c; color: #c3e88d; border: 1px solid #c3e88d; padding: 15px; text-align: center; border-radius: 8px; text-decoration: none; font-weight: 700; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; }
|
||||
.btn:hover { background-color: #c3e88d; color: #121212; cursor: pointer; box-shadow: 0 0 10px rgba(195,232,141,.3); }
|
||||
.btn.download { border-color: #82aaff; color: #82aaff; }
|
||||
.btn.download:hover { background-color: #82aaff; color: #121212; box-shadow: 0 0 10px rgba(130,170,255,.3); }
|
||||
|
||||
/* Спец цвет для телеграма */
|
||||
.btn.tg { border-color: #2AABEE; color: #2AABEE; }
|
||||
.btn.tg:hover { background-color: #2AABEE; color: #fff; box-shadow: 0 0 10px rgba(42,171,238,.3); }
|
||||
</style>
|
||||
<script>
|
||||
function copyText(elementId, btnElement) {
|
||||
const text = document.getElementById(elementId).innerText;
|
||||
navigator.clipboard.writeText(text).then(() => {
|
||||
const originalText = btnElement.innerText;
|
||||
btnElement.innerText = "Скопировано!";
|
||||
btnElement.style.background = "#c3e88d";
|
||||
btnElement.style.color = "#121212";
|
||||
setTimeout(() => {
|
||||
btnElement.innerText = originalText;
|
||||
btnElement.style.background = "";
|
||||
btnElement.style.color = "";
|
||||
}, 2000);
|
||||
}).catch(err => {
|
||||
console.error('Ошибка:', err);
|
||||
});
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<h3>➡️ VLESS RAW Reality xtls-rprx-vision</h3><div class="box">$link1</div>
|
||||
<h3>➡️ VLESS XHTTP Reality EXTRA - конфиг для роутера</h3><div class="box">$link2</div>
|
||||
<h3>➡️ Shadowsocks2022blake3 - новый и быстрый</h3><div class="box">$linkSS</div>
|
||||
<h3>➡️ Socks5 proxy (используйте для ТГ)</h3><div class="box">
|
||||
server=$DOMAIN port=10443 user=${socksUser} pass=${socksPasw}
|
||||
<a href="https://t.me/socks?server=$DOMAIN&port=10443&user=${socksUser}&pass=${socksPasw}">Автодобавление в ТГ</a></div><h3>
|
||||
📂 Ссылка на подписку (готовый конфиг клиента с роутингом)</h3><div class="box">$subPageLink</div><h3>📱 Приложение HAPP (Windows/Android/iOS/MAC/Linux)</h3>
|
||||
<p>Маршрутизацию нужно выключить, она тут встроенная. По умолчанию она выключена - включается, если вы пользовались сторонними сервисами.</p><div class="btn-group"><a href="happ://add/$subPageLink" class="btn">⚡ Автодобавление в HAPP</a><a href="https://www.happ.su/main/ru" target="_blank" class="btn download">⬇️ Скачать HAPP</a></div></body></html>
|
||||
|
||||
<h2>📂 Ссылка на подписку (готовый конфиг клиента с роутингом)</h2>
|
||||
<div class="config-row">
|
||||
<div class="config-code" id="subLink">$subPageLink</div>
|
||||
<button class="copy-btn" onclick="copyText('subLink', this)">Копировать</button>
|
||||
</div>
|
||||
|
||||
<h3>📱 Приложение HAPP (Windows/Android/iOS/MAC/Linux)</h3>
|
||||
<p>Маршрутизацию нужно выключить, она тут встроенная. По умолчанию она выключена - включатся, если вы пользовались сторонними сервисами.</p>
|
||||
<div class="btn-group">
|
||||
<a href="happ://add/$subPageLink" class="btn">⚡ Автодобавление в HAPP</a>
|
||||
<a href="https://www.happ.su/main/ru" target="_blank" class="btn download">⬇️ Скачать HAPP</a>
|
||||
</div>
|
||||
|
||||
<h3>➡️ VLESS RAW Reality xtls-rprx-vision</h3>
|
||||
<div class="config-row">
|
||||
<div class="config-code" id="c1">$link1</div>
|
||||
<button class="copy-btn" onclick="copyText('c1', this)">Копировать</button>
|
||||
</div>
|
||||
|
||||
<h3>➡️ VLESS XHTTP Reality EXTRA - конфиг для роутера</h3>
|
||||
<div class="config-row">
|
||||
<div class="config-code" id="c2">$link2</div>
|
||||
<button class="copy-btn" onclick="copyText('c2', this)">Копировать</button>
|
||||
</div>
|
||||
|
||||
<h3>➡️ Shadowsocks2022blake3 - новый и быстрый</h3>
|
||||
<div class="config-row">
|
||||
<div class="config-code" id="c3">$linkSS</div>
|
||||
<button class="copy-btn" onclick="copyText('c3', this)">Копировать</button>
|
||||
</div>
|
||||
|
||||
<h3>➡️ Socks5 proxy (используйте для ТГ)</h3>
|
||||
<!-- Поле для копирования данных -->
|
||||
<div class="config-row">
|
||||
<div class="config-code" id="sockCreds">server=$DOMAIN port=10443 user=${socksUser} pass=${socksPasw}</div>
|
||||
<button class="copy-btn" onclick="copyText('sockCreds', this)">Копировать</button>
|
||||
</div>
|
||||
<!-- Кнопка добавления -->
|
||||
<div class="btn-group">
|
||||
<a href="https://t.me/socks?server=$DOMAIN&port=10443&user=${socksUser}&pass=${socksPasw}" target="_blank" class="btn tg">✈️ Автодобавление в Telegram</a>
|
||||
</div>
|
||||
|
||||
<h2>💠 Все конфиги вместе</h2>
|
||||
<div class="config-row">
|
||||
<div class="config-code" id="cAll">$link1<br>$link2<br>$linkSS</div>
|
||||
<button class="copy-btn" onclick="copyText('cAll', this)">Копировать</button>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
EOF
|
||||
|
||||
echo -e "
|
||||
|
||||
Reference in New Issue
Block a user