Avatar eklentisi ve asl eklentisi olanlar için ayrıca avatar upload eklentisinin temel ayarlarını anlatacağım fikoo ile api den sonra devam ettiremedik
ne işe yarıyor bu eklenti? kayıtlı kullanıcı kiwiric e baglandıkta sonra kendi resmini yükleyebilmesi içindir.
Plugin adı: kiwiirc-plugin-avatar-upload
ssh baglanip şu komutu girelim (root ana klasorde )
Kod: Kodu kopyalamak için üzerine çift tıklayın!
git clone https://github.com/ItsOnlyBinary/kiwiirc-plugin-avatar-upload.git
/kiwiirc-plugin-avatar-upload böyle bir dosya oluşacak.
Kod: Kodu kopyalamak için üzerine çift tıklayın!
cd /kiwiirc-plugin-avatar-upload dosya içine girelim (bu eklentiyi root ana dizininde )
1)yarn
2) yarn build
kurulum yaptıktan sonra dist/ adında bir dosya kurulacak
/kiwiirc-plugin-avatar-upload# dizininde /dist dosyası altında bulunan dosyalar /user/share/kiwiirc/plugins altına kopyalıyalım.
unreal4-6 için yolu anlatıyorum inspircd için farklı olabilir unnrealircd.conf içine
Kod: Kodu kopyalamak için üzerine çift tıklayın!
loadmodule "extjwt";
extjwt {
method "HS256";
expire-after 30;
secret "j1kQiXVUngKUGH3sadsdpkR59wYOqNWB3Egtur8=";
}
yukardaki "secret kodu" için
Kod: Kodu kopyalamak için üzerine çift tıklayın!
openssl rand -base64 32
ssh de herhangi bir yerde girelim bize vereceği kodu secret kısmındaki kod ile değişelim
bu eklenti web avatarları ile ircd arasındaki baglantı kurmasını sağlayacak
modulun yuklenip yuklenmediğini sunucuda
/EXTJWT yazdığınızda
"EXTJWT Not enough parameters" yanıtını alırsınız yada /module -all yazdığınız listede şu şekilde görebilirsiniz.
Kod: Kodu kopyalamak için üzerine çift tıklayın!
*** extjwt - Command /EXTJWT (web service authorization) - by UnrealIRCd Team [3RD]
bunlar arka plandaki genel ayarlar ayrıca
kiwiirc için yapılması gerekenler (daha önce plugin listesinizin olduğunu var sayıyorum altına ekleyin)
1)
Kod: Kodu kopyalamak için üzerine çift tıklayın!
{"name": "avatar-upload", "url": "/static/plugins/plugin-avatar-upload.
js"},
2)
Kod: Kodu kopyalamak için üzerine çift tıklayın!
"plugin-avatar-upload" : {
// Url path to api.php
"api_url": "https://kiwi.zchat.org/avatars/api.php",
// Url path to avatar storage directory
"avatars_url": "https://kiwi.zchat.org/avatars/",
// Avatars will be preloaded to check they exist on the server
// with this set to false it it recommended to have a default avatar
// in place of the 404 page for your avatars directory
"preload_avatars": false,
// Enables the setting of account avatars
"set_avatars": true,
},
burada ne önemli kısım
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] ve avatars klasörü
Api dosyasını paylaşıyorum:
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] kod burada kopyalıp api.php olarak kaydedin ayrıca kodu foruma ekliyorum.
api kodunu nginx altında örneğin ben
/var/
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.klasoru altına ekledim bu şu demek
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
çok klasor oluşturup kafa karıştırmayın her zaman sade ve bir dosya kullanmaya calısın
+ kafa karışıklığı olmaması için yeni bir dns oluşturabilirsiniz. sallıyorum irc.ircforumlari.net yerine chat.ircforumlari.net subdomaini ile upload edilsin. çünkü bunun nginx ayarlarını yapacağız.
avatars klasörünün altına api.php bir de
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] (indirip upload edin olmadı eklentinin hepsini indirin içinden bunları yükleyin)
şuradaki vendor klasörünü de ekleyin api.php dosyasının başındaki satır da şu var
Kod: Kodu kopyalamak için üzerine çift tıklayın!
require 'vendor/autoload.php';
bu kod bunun için
devam edelim şimdi nginx ayarlarımızı gösterelim. bu nginx ayarları beni çok uğraştırmıştı siz hiç uğraşmadan rahatça geçeceksiniz bu kısmı ..
bu kodu özellikle buraya yapıştıracağım:
bu kodu kiwi.zchat.org subdomaini altına avatar yüklenmesi ve avatars klasoru içindir
mantık şu bir ıp adresimiz ve bu subdomaini ona yönlendirdik proxyreverse ayarımızın altında klasoru tanıttık
kiwi.zchat.org için ssl vermeyi unutmayın bunu anlatmama gerek yok
bu kodu
Kod: Kodu kopyalamak için üzerine çift tıklayın!
/etc/nginx/sites-available$
altında
Kod: Kodu kopyalamak için üzerine çift tıklayın!
nano default
dosyası içine eklenmiştir
Kod: Kodu kopyalamak için üzerine çift tıklayın!
server {
# SSL configuration (Yorumları kaldırarak SSL aktif edebilirsin)
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
# include snippets/snakeoil.conf;
root /var/
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.index index.php index.html index.htm;
# Server name
server_name kiwi.zchat.org; # managed by Certbot
# /avatars/ dizini için CORS ayarları
location /avatars/ {
alias /var/
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.autoindex off;
allow all;
add_header Access-Control-Allow-Origin "*";
add_header Access-Control-Allow-Methods "GET, POST, OPTIONS";
add_header Access-Control-Allow-Headers "Content-Type, Authorization, X-Requested-With";
add_header Access-Control-Allow-Credentials "true";
}
location /avatars/large/ {
expires 6h;
add_header Cache-Control "public, max-age=21600";
}
location /avatars/small/ {
expires 6h;
add_header Cache-Control "public, max-age=21600";
}
location / {
index index.php index.html;
autoindex off;
}
# API endpoint için doğru CORS ayarları
location /avatars/api.php {
if ($request_method = 'OPTIONS') {
add_header Access-Control-Allow-Origin "*";
add_header Access-Control-Allow-Methods "GET, POST, OPTIONS";
add_header Access-Control-Allow-Headers "Content-Type, Authorization, X-Requested-With";
add_header Access-Control-Allow-Credentials "true";
return 204;
}
add_header Access-Control-Allow-Origin "*";
add_header Access-Control-Allow-Methods "GET, POST, OPTIONS";
add_header Access-Control-Allow-Headers "Content-Type, Authorization, X-Requested-With";
add_header Access-Control-Allow-Credentials "true";
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# Tüm PHP dosyalarını çalıştırmak için genel ayar (bu ayar php dosyaları içindir calismasi için )
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# .htaccess dosyalarına erişimi engelle
location ~ /\.ht {
deny all;
}
# Hata sayfaları (isteğe bağlı)
error_page 404 /404.html;
location = /404.html {
root /var/
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.type="text/javascript" src="https://code.jquery.com/jquery-1.12.0.min.js"> bütün gerekli ayarları yaptıktan sonra
systemctl restart kiwiirc (veya sudo systemctl restart kiwiirc)
systemctl restart nginx
En önemli kısımları paylaştım şuan aktif olarak bu şekilde çalışan [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
kurulumu yapan arkadaşlar hataları Chrome da girip F12 yada sağ tıklayıp incele diyerek Consol kısmında takip etsinler ona göre çözüm üretirler üretiriz.
umarım bir şey atlatmamışımdır
herkese iyi ramazanlar
Konu SNOOPY tarafından (21 Mart 2025 Saat 16:52 ) değiştirilmiştir.