Tekil Mesaj gösterimi
Alt 02 Aralık 2024, 20:57   #1
BlackForce
Bu saatten sonra acın acıkırsa, anca ekmek olur koşarım sana.
BlackForce - ait Kullanıcı Resmi (Avatar)

Standart IRCServices - Web kayıt modulu / C - PHP

Merhaba, bir süre önce başladığım fakat projenin farklı bir yöne ilerlemesinden dolayı daha fazla ilgilenmediğim IRCServices web kayıt modulunu belki birilerinin işine yarar diye paylaşmak istedim.

Servicesten söktüğüm için eksik kısımlar olabilir, kurulumdan önce yedek almayı unutmayın. Tavsiyem, test sunucunuz üzerinde test edin.

Ek bir bota gerek yoktur, direkt services üstünden çalışmaktadır, irc sunucusundaki kurallar web için de uygulanmaktadır (Kayıt için xx saniye daha beklemelisiniz vb.)

ircservices-5.0.64 versiyonunda denenmiştir.

İlk etapta event2 ve pthread gibi ek libler ile web'e açılıyordu fakat unrealircd sunucusu olan bir çok sunucu sahibinin root erişimi olmaması ve ek liblerin kurulumunda, kullanımında sorun yaşayabileceği göz önüne alınıp mevcut ircservices httpd modulu referans alınarak tasarlanmıştır.

Bunun getirdiği bazı avantajlar ve dezavantajları var elbette, mesela modul tarafından verilen json yanıtlarının manuel olarak işlenmesi gerekiyor, bunun yanında httpd modulü fazlasıyla eksik.

En büyük avantajı ise hiçbir ek lib kurulumuna gerek kalmadan tak - çalıştır mantığıyla webe açılabilmesi.

Webe açılırken port açmada sorun yaşayabilirsiniz, bu durumda tek yapılabilecek şey sağlayıcınızdan destek almaktır.

Ekran görüntüleri:






Adımlar:

  1. Services klasöründeki modules klasörünün içindeki bfserv dosyasını aynı dizini takip ederek içine atın. (modules -> bfserv)
  2. .conf dosyalarını düzenleyin.
  3. .bfdb.php dosyasını düzenleyin.

ircservices.conf'ta

Kod

LoadModule httpd/main
LoadModule httpd/auth-ip
kısımlarının başındaki # karakterini kaldırın. ve şu satırı ekleyin:

Kod

LoadModule bfserv/main
modules.conf'u da düzenleyin

Kod

Module httpd/main
    ListenTo IP_Adresiniz:Açacağınız_Port
    ListenBacklog	5
    RequestBufferSize	4096
    MaxConnections	30
    MaxRequests		100
    IdleTimeout		30s
    LogConnections
EndModule

Module httpd/auth-ip
    AllowHost / *
EndModule

Module bfserv/main
    BFServName	"BFServices"	"BFServices IRC Hizmeti"
	Prefix		"/bf"
EndModule
Ekstra Bilgi: Eğer ek güvenlik katmanı oluşturmak isterseniz, httpd/auth-ip modulünü bfserv modulüne işlemeniz gerekecektir.

Php kısımlarını düzenleyin:

bfdb.php:

Kod

$host = "192.0.0.0"; // Services IP ( Module httpd/main --> ListenTo 192.0.0.0:8080 )
$port = 8080; // Services Port ( Module httpd/main --> ListenTo 192.0.0.0:8080 )
$unreallink = "Prefix"; // Services HTTP Server Prefix'i ( Module bfserv/main --> Prefix )

$limit = 5;
$sure = 60;
$cpSure = 300;

$site_key = 'google site key';
$secret_key = 'google secret key';
$host kısmına ip adresinizi, port kısmına açtığınız portu yazın.
$unreallink kısmına modules.conf'ta Prefix kısmına eklediğiniz url bağlamını ekleyin.

$limit, $sure, $cpSure ekstra güvenlik katmanı için eklendi,

$limit maksimum istek sayısı
$sure maksimum süre

[$sure saniye içinde $limit istek gelirse blokla]

$cpSure Google captcha geçerlilik süresi

$site_key Google captcha v2'den alacağınız site key
$secret_key Google captcha v2'den alacağınız secret key


Önizleme linki: [Üye Olmadan Linkleri Göremezsiniz. Lütfen Üye Olmak için TIKLAYIN...]
Test sunucusu: test.bfsistem.com:6667

[Üye Olmadan Linkleri Göremezsiniz. Lütfen Üye Olmak için TIKLAYIN...]

Rar şifresi:

Kod

bfsistem.com.tr
________________