Squidを介して渡されるいくつかの特別なURLを変更する必要があります。たとえば、Squid全体でアドレスwww.google.com.vnにアクセスします。www.google.com.vnをwww.google.comに置き換える場所でSquidのソースコードを変更したいと思います。したがって、www.google.com.vnへのすべてのリクエストは、www.google.comへのリクエストになります。
ASPSを助けてください
まず、squid の書き換えとリダイレクトはサードパーティのヘルパーに依存します。最良の部分は、このヘルパーを任意のプログラミング言語で記述できることです。
squid.confのディレクティブを使用しurl_rewrite_program
て、カスタム スクリプトへのパスを追加します。スクリプトは、次のコンテンツを受け取ります。
URL client_ip "/" fqdn user method [ kvpairs]\n
明らかにこの部分が必要なURL
ので、URL 部分を取得して、クライアントを誘導したい Web サイトを返す方法を考えてください。
何らかの形でお役に立てば幸いです...
書き換えプログラムの例 (C++)
#include <iostream>
#include <string>
using namespace std;
// a replace function :)
bool replace(std::string& str, const std::string& from, const std::string& to) {
size_t start_pos = str.find(from);
if(start_pos == std::string::npos)
return false;
str.replace(start_pos, from.length(), to);
return true;
}
int main()
{
while(1)
{
string input;
cin >> input;
replace(input, "www.google.vn", "www.google.com");
cout << input << endl;
}
}