mirror of
https://github.com/proxysu/ProxySU.git
synced 2025-02-16 14:43:14 +03:00
优化伪装网址预处理
This commit is contained in:
parent
7b3a8627c0
commit
01af863260
31
ProxySU/ClassModel.cs
Normal file
31
ProxySU/ClassModel.cs
Normal file
@ -0,0 +1,31 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace ProxySU
|
||||
{
|
||||
class ClassModel
|
||||
{
|
||||
//伪装网址的处理
|
||||
public static string DisguiseURLprocessing(string fakeUrl)
|
||||
{
|
||||
var uri = new Uri(fakeUrl);
|
||||
return uri.Host;
|
||||
//Console.WriteLine(uri.Host);
|
||||
|
||||
////处理伪装网站域名中的前缀
|
||||
//if (fakeUrl.Length >= 7)
|
||||
//{
|
||||
// string testDomainMask = fakeUrl.Substring(0, 7);
|
||||
// if (String.Equals(testDomainMask, "https:/") || String.Equals(testDomainMask, "http://"))
|
||||
// {
|
||||
// string[] tmpUrl = fakeUrl.Split('/');
|
||||
// fakeUrl = tmpUrl[2];
|
||||
// }
|
||||
|
||||
//}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -5,9 +5,9 @@
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:local="clr-namespace:ProxySU"
|
||||
mc:Ignorable="d"
|
||||
Title="ProxySU - v2.4.19" Height="675" Width="650">
|
||||
Title="ProxySU - v2.4.20 beta1" Height="675" Width="650">
|
||||
<!--以下样式参考自:https://yq.aliyun.com/articles/331878
|
||||
https://docs.microsoft.com/en-us/dotnet/desktop-wpf/fundamentals/styles-templates-overview-->
|
||||
https://docs.microsoft.co/en-us/dotnet/desktop-wpf/fundamentals/styles-templates-overview-->
|
||||
<Window.Resources>
|
||||
<Style BasedOn="{StaticResource {x:Type TextBox}}"
|
||||
TargetType="TextBox"
|
||||
|
@ -2991,7 +2991,7 @@ namespace ProxySU
|
||||
//传递域名
|
||||
ReceiveConfigurationParameters[4] = PreTrim(TextBoxTrojanHostDomain.Text);
|
||||
//传递伪装网站
|
||||
ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxTrojanSites.Text));
|
||||
ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxTrojanSites.Text));
|
||||
|
||||
//传递服务端口
|
||||
ReceiveConfigurationParameters[1] = "443";
|
||||
@ -3560,7 +3560,7 @@ namespace ProxySU
|
||||
ReceiveConfigurationParameters[1] = "443";//传递端口
|
||||
ReceiveConfigurationParameters[3] = TextBoxNaiveUser.Text;//传递用户名
|
||||
ReceiveConfigurationParameters[2] = TextBoxNaivePassword.Text;//传递密码
|
||||
ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxNaiveSites.Text));//传递伪装网站
|
||||
ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxNaiveSites.Text));//传递伪装网站
|
||||
|
||||
//启动布署进程
|
||||
installationDegree = 0;
|
||||
@ -3947,7 +3947,7 @@ namespace ProxySU
|
||||
//传递域名
|
||||
ReceiveConfigurationParameters[4] = PreTrim(TextBoxSSRHostDomain.Text);
|
||||
//传递伪装网站
|
||||
ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxSSRSites.Text));
|
||||
ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxSSRSites.Text));
|
||||
|
||||
//传递服务端口
|
||||
ReceiveConfigurationParameters[1] = "443";
|
||||
@ -5261,23 +5261,26 @@ namespace ProxySU
|
||||
}
|
||||
|
||||
//伪装网站处理
|
||||
private string DisguiseURLprocessing(string fakeUrl)
|
||||
{
|
||||
//处理伪装网站域名中的前缀
|
||||
if (fakeUrl.Length >= 7)
|
||||
{
|
||||
string testDomainMask = fakeUrl.Substring(0, 7);
|
||||
if (String.Equals(testDomainMask, "https:/") || String.Equals(testDomainMask, "http://"))
|
||||
{
|
||||
//MessageBox.Show(testDomain);
|
||||
string[] tmpUrl = fakeUrl.Split('/');
|
||||
//MainWindow.ReceiveConfigurationParameters[7] = TextBoxMaskSites.Text.Replace("/", "\\/");
|
||||
fakeUrl = tmpUrl[2];
|
||||
}
|
||||
//private string DisguiseURLprocessing(string fakeUrl)
|
||||
//{
|
||||
//var uri = new Uri(fakeUrl);
|
||||
//return uri.Host;
|
||||
|
||||
}
|
||||
return fakeUrl;
|
||||
}
|
||||
////处理伪装网站域名中的前缀
|
||||
//if (fakeUrl.Length >= 7)
|
||||
//{
|
||||
// string testDomainMask = fakeUrl.Substring(0, 7);
|
||||
// if (String.Equals(testDomainMask, "https:/") || String.Equals(testDomainMask, "http://"))
|
||||
// {
|
||||
// //MessageBox.Show(testDomain);
|
||||
// string[] tmpUrl = fakeUrl.Split('/');
|
||||
// //MainWindow.ReceiveConfigurationParameters[7] = TextBoxMaskSites.Text.Replace("/", "\\/");
|
||||
// fakeUrl = tmpUrl[2];
|
||||
// }
|
||||
|
||||
//}
|
||||
//return fakeUrl;
|
||||
// }
|
||||
|
||||
#region 检测系统内核是否符合安装要求
|
||||
//private static bool DetectKernelVersion(string kernelVer)
|
||||
|
@ -51,5 +51,5 @@ using System.Windows;
|
||||
// 可以指定所有值,也可以使用以下所示的 "*" 预置版本号和修订号
|
||||
// 方法是按如下所示使用“*”: :
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("2.4.19.0")]
|
||||
[assembly: AssemblyFileVersion("2.4.19.0")]
|
||||
[assembly: AssemblyVersion("2.4.20.0")]
|
||||
[assembly: AssemblyFileVersion("2.4.20.0")]
|
||||
|
@ -82,6 +82,7 @@
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</ApplicationDefinition>
|
||||
<Compile Include="ClassModel.cs" />
|
||||
<Compile Include="ProofreadTimeWindow.xaml.cs">
|
||||
<DependentUpon>ProofreadTimeWindow.xaml</DependentUpon>
|
||||
</Compile>
|
||||
|
@ -72,21 +72,23 @@ namespace ProxySU
|
||||
|
||||
|
||||
//伪装网站处理
|
||||
private string DisguiseURLprocessing(string fakeUrl)
|
||||
{
|
||||
//private string DisguiseURLprocessing(string fakeUrl)
|
||||
//{
|
||||
//var uri = new Uri(fakeUrl);
|
||||
//return uri.Host;
|
||||
//处理伪装网站域名中的前缀
|
||||
if (fakeUrl.Length >= 7)
|
||||
{
|
||||
string testDomainMask = fakeUrl.Substring(0, 7);
|
||||
if (String.Equals(testDomainMask, "https:/") || String.Equals(testDomainMask, "http://"))
|
||||
{
|
||||
string[] tmpUrl = fakeUrl.Split('/');
|
||||
fakeUrl = tmpUrl[2];
|
||||
}
|
||||
//if (fakeUrl.Length >= 7)
|
||||
//{
|
||||
// string testDomainMask = fakeUrl.Substring(0, 7);
|
||||
// if (String.Equals(testDomainMask, "https:/") || String.Equals(testDomainMask, "http://"))
|
||||
// {
|
||||
// string[] tmpUrl = fakeUrl.Split('/');
|
||||
// fakeUrl = tmpUrl[2];
|
||||
// }
|
||||
|
||||
}
|
||||
return fakeUrl;
|
||||
}
|
||||
//}
|
||||
//return fakeUrl;
|
||||
// }
|
||||
|
||||
private void ButtondDecide_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
@ -122,7 +124,7 @@ namespace ProxySU
|
||||
//传递域名
|
||||
MainWindow.ReceiveConfigurationParameters[4] = PreTrim(TextBoxDomainSS.Text);
|
||||
//传递伪装网站
|
||||
MainWindow.ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
MainWindow.ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
|
||||
}
|
||||
|
||||
@ -151,7 +153,7 @@ namespace ProxySU
|
||||
//传递域名
|
||||
MainWindow.ReceiveConfigurationParameters[4] = PreTrim(TextBoxDomainSS.Text);
|
||||
//传递伪装网站
|
||||
MainWindow.ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
MainWindow.ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
|
||||
}
|
||||
//V2Ray-Plugin SS+QUIC模式被选中
|
||||
|
@ -37,7 +37,7 @@ namespace ProxySU
|
||||
//传递域名
|
||||
MainWindow.ReceiveConfigurationParameters[4] = PreTrim(TextBoxDomain.Text);
|
||||
//传递伪装网站
|
||||
MainWindow.ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
MainWindow.ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
|
||||
//传递服务端口
|
||||
MainWindow.ReceiveConfigurationParameters[1] = "443";
|
||||
@ -167,20 +167,21 @@ namespace ProxySU
|
||||
}
|
||||
|
||||
//处理伪装网站域名中的前缀
|
||||
private string DisguiseURLprocessing(string fakeUrl)
|
||||
{
|
||||
|
||||
if (fakeUrl.Length >= 7)
|
||||
{
|
||||
string testDomainMask = fakeUrl.Substring(0, 7);
|
||||
if (String.Equals(testDomainMask, "https:/") || String.Equals(testDomainMask, "http://"))
|
||||
{
|
||||
string[] tmpUrl = fakeUrl.Split('/');
|
||||
fakeUrl = tmpUrl[2];
|
||||
}
|
||||
//private string DisguiseURLprocessing(string fakeUrl)
|
||||
//{
|
||||
//var uri = new Uri(fakeUrl);
|
||||
//return uri.Host;
|
||||
//if (fakeUrl.Length >= 7)
|
||||
//{
|
||||
// string testDomainMask = fakeUrl.Substring(0, 7);
|
||||
// if (String.Equals(testDomainMask, "https:/") || String.Equals(testDomainMask, "http://"))
|
||||
// {
|
||||
// string[] tmpUrl = fakeUrl.Split('/');
|
||||
// fakeUrl = tmpUrl[2];
|
||||
// }
|
||||
|
||||
}
|
||||
return fakeUrl;
|
||||
}
|
||||
//}
|
||||
//return fakeUrl;
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
@ -145,7 +145,7 @@ namespace ProxySU
|
||||
//传递域名
|
||||
MainWindow.ReceiveConfigurationParameters[4] = PreTrim(TextBoxDomain.Text);
|
||||
//传递伪装网站
|
||||
MainWindow.ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
MainWindow.ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
|
||||
}
|
||||
|
||||
@ -162,7 +162,7 @@ namespace ProxySU
|
||||
//传递域名
|
||||
MainWindow.ReceiveConfigurationParameters[4] = PreTrim(TextBoxDomain.Text);
|
||||
//传递伪装网站
|
||||
MainWindow.ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
MainWindow.ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
|
||||
}
|
||||
|
||||
@ -181,7 +181,7 @@ namespace ProxySU
|
||||
//传递域名
|
||||
MainWindow.ReceiveConfigurationParameters[4] = PreTrim(TextBoxDomain.Text);
|
||||
//传递伪装网站
|
||||
MainWindow.ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
MainWindow.ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
}
|
||||
|
||||
//VLESS+http2+TLS+Web模式选中
|
||||
@ -199,7 +199,7 @@ namespace ProxySU
|
||||
//传递域名
|
||||
MainWindow.ReceiveConfigurationParameters[4] = PreTrim(TextBoxDomain.Text);
|
||||
//传递伪装网站
|
||||
MainWindow.ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
MainWindow.ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
}
|
||||
|
||||
//VLESS+VMESS+XTLS+TCP+WebSocket+Web模式被选中
|
||||
@ -220,7 +220,7 @@ namespace ProxySU
|
||||
//传递混淆方式(VMESS TCP Path方式所用)
|
||||
MainWindow.ReceiveConfigurationParameters[5] = "http";
|
||||
//传递伪装网站
|
||||
MainWindow.ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
MainWindow.ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
|
||||
}
|
||||
|
||||
@ -269,7 +269,7 @@ namespace ProxySU
|
||||
//传递域名
|
||||
MainWindow.ReceiveConfigurationParameters[4] = PreTrim(TextBoxDomain.Text);
|
||||
//传递伪装网站
|
||||
MainWindow.ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
MainWindow.ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
|
||||
}
|
||||
|
||||
@ -324,7 +324,7 @@ namespace ProxySU
|
||||
//传递域名
|
||||
MainWindow.ReceiveConfigurationParameters[4] = PreTrim(TextBoxDomain.Text);
|
||||
//传递伪装网站
|
||||
MainWindow.ReceiveConfigurationParameters[7] = DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
MainWindow.ReceiveConfigurationParameters[7] = ClassModel.DisguiseURLprocessing(PreTrim(TextBoxMaskSites.Text));
|
||||
|
||||
}
|
||||
|
||||
@ -566,21 +566,25 @@ namespace ProxySU
|
||||
|
||||
//伪装网站处理
|
||||
//DisguiseURLprocessing(string fakeUrl);
|
||||
private string DisguiseURLprocessing(string fakeUrl)
|
||||
{
|
||||
//处理伪装网站域名中的前缀
|
||||
if (fakeUrl.Length >= 7)
|
||||
{
|
||||
string testDomainMask = fakeUrl.Substring(0, 7);
|
||||
if (String.Equals(testDomainMask, "https:/") || String.Equals(testDomainMask, "http://"))
|
||||
{
|
||||
string[] tmpUrl = fakeUrl.Split('/');
|
||||
fakeUrl = tmpUrl[2];
|
||||
}
|
||||
// private string DisguiseURLprocessing(string fakeUrl)
|
||||
//{
|
||||
//var uri = new Uri(fakeUrl);
|
||||
//return uri.Host;
|
||||
//Console.WriteLine(uri.Host);
|
||||
|
||||
}
|
||||
return fakeUrl;
|
||||
}
|
||||
////处理伪装网站域名中的前缀
|
||||
//if (fakeUrl.Length >= 7)
|
||||
//{
|
||||
// string testDomainMask = fakeUrl.Substring(0, 7);
|
||||
// if (String.Equals(testDomainMask, "https:/") || String.Equals(testDomainMask, "http://"))
|
||||
// {
|
||||
// string[] tmpUrl = fakeUrl.Split('/');
|
||||
// fakeUrl = tmpUrl[2];
|
||||
// }
|
||||
|
||||
//}
|
||||
|
||||
//}
|
||||
|
||||
#region 其他设置中的界面控制
|
||||
|
||||
|
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user