Link oluşturma api sorunu.


Üyelik Yaşı
1 Hafta
Mesajlar
5
Tepki Puanı
0
Ödül
1
Yaş
17
Konum
none
Öncelikle merhabalar.

Ben sitem için tr.linki kullanarak doğrulama sistemi yapmak istedim. Ama bunun sonucunda her ziyaretçi için farklı bir kısaltma oluşturuyor. eğer bir günde 1000 kişi siteyi ziyaret ederse 1000 farklı link oluşacak. ve doğrulama linki olduğu için abuse edilmesini istemiyorum. Burada php kodum.

PHP:
$ip_encrypted = encrypt(get_client_ip() . '-' . time());

$link = "http://.../kod_ver?dogrula=" . $ip_encrypted;
$api_url = "https://tr.link/api?api=63c6b5d9802e68f37b2921e8c5d67fe193c9b23b&url=" .$link . "&alias";
$result = @json_decode(file_get_contents($api_url),TRUE);
if($result["status"] === 'error') {
echo "Bir sorun var";
} else {
$result_link = $result["shortenedUrl"];
header("Location: $result_link");
}
Bence bu apiye kesinlikle ölümlü linkler eklenmeli. veya farklı bir çözüm gerek. Site yöneticilerinin önerisini almak istiyorum. time() fonksiyonunu kesinlikle kullanmam gerek.
 

gecemor

Python Developer
Yönetici
Moderator

Üyelik Yaşı
4 Ay
Mesajlar
317
Tepki Puanı
312
Ödül
56
Konum
Milky way
Yanlış anlamadıysam eğer "http://.../kod_ver?dogrula=" şeklinde verdiğiniz linkin sunucusu sizin kontrolünüzde ise bu doğrulama zaman aşımı için gerekli php kodunu kendiniz hazırlamanız gerekir diye düşünüyorum.

Mesela session() kullanabilirsiniz, session ile geçici cookie ayarlatabilirsiniz. Daha sonra oturum sonlanacağı için doğrulama linkinizi suistimal edemezler. Veya başka bir yöntem de kullanabilirsiniz, sonuçta bu size, teknik bilginize bağlı.
 

Üyelik Yaşı
1 Hafta
Mesajlar
5
Tepki Puanı
0
Ödül
1
Yaş
17
Konum
none
Yanlış anlamadıysam eğer "http://.../kod_ver?dogrula=" şeklinde verdiğiniz linkin sunucusu sizin kontrolünüzde ise bu doğrulama zaman aşımı için gerekli php kodunu kendiniz hazırlamanız gerekir diye düşünüyorum.

Mesela session() kullanabilirsiniz, session ile geçici cookie ayarlatabilirsiniz. Daha sonra oturum sonlanacağı için doğrulama linkinizi suistimal edemezler. Veya başka bir yöntem de kullanabilirsiniz, sonuçta bu size, teknik bilginize bağlı.
zaten benim kullandığım bir cookie check özelliği var. ama yapmak istediğim şu;

1-tr.link geçildiğinde 300 saniyelik bir site erişimi söz konusu olacak
2-300 saniyelik erişim bittiğinde cookieler temizlenecek
3-Siteye yeniden erişim istenilirse tr.link e yönlendirilecek.

yani böyle bir sistem hazırladığım için bu tr.link doğrulama kısmı backend'de olmak zorunda. Eğer sisteminize şöyle bir sistem eklerseniz

http://tr.link/UserApiId/link

En azından milyon tane kısaltılmış link oluşmaz.

lütfen bu isteğimi dikkate alın.
 

oxcakmak

Banlı Üye

Üyelik Yaşı
3 Ay
Mesajlar
1,247
Tepki Puanı
437
Ödül
61
Konum
Kocaeli
zaten benim kullandığım bir cookie check özelliği var. ama yapmak istediğim şu;

1-tr.link geçildiğinde 300 saniyelik bir site erişimi söz konusu olacak
2-300 saniyelik erişim bittiğinde cookieler temizlenecek
3-Siteye yeniden erişim istenilirse tr.link e yönlendirilecek.

yani böyle bir sistem hazırladığım için bu tr.link doğrulama kısmı backend'de olmak zorunda. Eğer sisteminize şöyle bir sistem eklerseniz

http://tr.link/UserApiId/link

En azından milyon tane kısaltılmış link oluşmaz.

lütfen bu isteğimi dikkate alın.
gereksiz link kısaltmasını önlemekte senin yapabileceğin bir şey. veritabanında kontrol ettireceksin
 

oxcakmak

Banlı Üye

Üyelik Yaşı
3 Ay
Mesajlar
1,247
Tepki Puanı
437
Ödül
61
Konum
Kocaeli
Doğru diyosun. eğer veritabanı olsa ip lere id verirdim. eğer ipnin süresi biterse veritabanından silerdim. ve kısaltmaları ip ye göre yapardım. bu yüzden 1000 lerce yine oluşurdu lakin her gün değil bir kere de oluşurdu.
trlink sayaçları yada online ziyarteçi sistemi de o şekilde işliyor.
 
Üst