İleri Konular
kendi-barındırılan Talep Sistemi yükleme manual
SaaS vs kendi barındırılan
isimsoftware hem bulut (hosted) hem de kendi sunucunuzda (self-hosted) sürümler sunar. Bu kurulum kılavuzu, kendi sunucunuzda çalıştırılan “self-hosted” sürüm içindir.
Bu doküman isimsoftware Talep Sistemi kurulum kılavuzudur — web tabanlı bir Talep Sistemi yazılımıdır. Bu rehberde isimsoftware Talep Sistemi Talep Sistemi kurulumunun ve temel kullanımının nasıl yapılacağını öğreneceksiniz.
Bu kılavuz isimsoftware Talep Sistemi sürüm 10 ve üzeri içindir
Bu kılavuz isimsoftware Talep Sistemi sürüm 10 ve üzeri içindir. Daha eski sürümlere ait kılavuz burada bulunabilir.
Genel Bakış
isimsoftware Talep Sistemi’ni tercih ettiğiniz için teşekkür ederiz. isimsoftware Talep Sistemi, ekiplerin müşterilerine etkili destek sunmasını sağlayan web tabanlı bir Talep Sistemi yazılımıdır. isimsoftware Talep Sistemi, istemci bilgisayarlardan web tarayıcısı üzerinden erişilen .NET 10 tabanlı bir web uygulamasıdır.
Talepler ve Kategoriler
Talepler (aynı zamanda “issue”, “Destek talebi” veya “Destek vakası” olarak da bilinir), Talep Sistemi’nin temel birimleridir. Talepler kullanıcılar tarafından oluşturulur ve kolay yönetim için Kategoriler altında organize edilir.
Kullanıcı rolleri
isimsoftware Yardım Masası dört kullanıcı rolü içerir:
- Normal kullanıcı - sisteme Destek Talepleri gönderen standart kullanıcıdır
- Yönetici kullanıcı - ek “yönetici” yetkilerine sahip kullanıcıdır. Aynı firma içindeki diğer kullanıcıların Taleplerini görüntüleyebilir ve kapatabilir
- Teknisyen (diğer adıyla “Talep Sistemi Temsilcisi”) - yöneticinin yetki verdiği Kategorilerde Talepleri yönetebilen kullanıcıdır. Yeni Talepler için e-posta bildirimi alır. Bir kullanıcının teknisyen olması için en az bir Kategoriye atanması gerekir
- Yönetici (Administrator) - en yetkili kullanıcıdır. Sistem ayarlarını yönetir, kullanıcıları Kategorilere atar, Kategoriler oluşturur ve kullanıcı ekleyip siler. Varsayılan olarak yeni Talepler hakkında bildirim almaz, ancak teknisyen olarak atanırsa alabilir
Sistem gereksinimleri
Donanım
RAM: Özellikle web uygulaması ve veritabanı aynı sunucuda çalışacaksa 16 GB önerilir. Aksi halde 8 GB yeterlidir.
CPU: 4 çekirdekli çok çekirdekli bir işlemci önerilir.
Depolama: Talep sayısına bağlıdır. 5 bin Talep yaklaşık 100 MB yer kaplar (ek dosyalar hariç).
Genel olarak gereksinimler yükünüze bağlıdır. Başlangıçta çoğu VPS yeterlidir. isimsoftware oldukça optimize edilmiştir.
Platformlar
isimsoftware Talep Sistemi aşağıdaki işletim sistemlerinden birini gerektirir:
- Microsoft Windows Server 2016 veya üzeri
- Linux (Ubuntu, CentOS, WSL2, Debian üzerinde test edilmiştir)
- Docker
İstemci tarafında özel bir işletim sistemi gereksinimi yoktur. Chrome, Firefox, Edge, Safari gibi modern tarayıcılar kullanılabilir.
Gerekli bilgi düzeyi
Bir web uygulamasını sunucuya kurmak temel düzeyde sistem yönetimi bilgisi gerektirir. MS SQL Server kurulumu, veritabanı oluşturma ve SQL script çalıştırma bilgisi gerekir. IIS (Windows) veya Nginx (Linux) yapılandırma bilgisi de gerekebilir.
Bu nedenle çoğu kullanıcı için bulut (hosted) sürüm önerilir.
Ön gereksinimler
Windows
- Microsoft .NET 10 Hosting Bundle (indirme bağlantısı)
- Internet Information Services (IIS) ve ASP.NET özellikleri
- Windows Authentication (isteğe bağlı)
- Microsoft SQL Server 2012 veya üzeri (Mixed Mode aktif olmalı)
.NET, IIS ve SQL Server Express ücretsizdir.
Linux
- Modern Linux dağıtımı (Ubuntu 22.04 önerilir)
- Microsoft SQL Server
- .NET Runtime 10 veya üzeri
sudo apt-get update && \
sudo apt-get install -y aspnetcore-runtime-10.0
sudo add-apt-repository ppa:dotnet/backports && \
sudo apt-get update && \
sudo apt-get install -y aspnetcore-runtime-10.0
Detaylı bilgi için resmi dokümana bakın.
Docker
- Docker Engine (Docker Desktop önerilir)
isimsoftware Talep Sistemi kurulumu
Teknik olarak sistem iki bileşenden oluşur: web uygulaması ve SQL Server veritabanı. Web uygulaması sunucuya kopyalanır, veritabanı kurulur.
Windows
İsterseniz video rehberi izleyebilirsiniz:
isimsoftware Talep Sistemi iki farklı şekilde kurulabilir:
Kur.exekurulum dosyasını çalıştırarak otomatik kurulum — önerilen yöntemdir. Yerel sunucuya, terminal veya fiziksel erişiminiz varsa kullanılır.- manuel kurulum — sistem yöneticileri veya örneğin isimsoftware Talep Sistemi’ni bir hosting ortamına yüklemek istediğiniz durumlar için kullanılır.
Kur.exe ile kurulum
- Ön gereksinimleri kurun, özellikle .NET 10 hosting bundle
- zip dosyasını çıkarın
install.batdosyasını çalıştırın (sistemin .NET kurulumunu kontrol eder ve ardındanKur.exe’yi başlatır)- kurulum sihirbazını takip edin
- veritabanı oluşturma adımında:
- Kur, SQL Server adını soracaktır. SQL Server Express kullanıyorsanız, bu sürüm varsayılan olarak adlandırılmış instance (SQLEXPRESS) şeklinde kurulur. Bu nedenle sunucu adı olarak (local)\SQLEXPRESS girmeniz gerekir.
- Kur, belirtilen sunucuda isimsoftwareTalepSistemi veritabanını oluşturur
- Kur, rastgele oluşturulmuş bir parola ile isimsoftwareTalepSistemiUser SQL kullanıcısını oluşturur (bu parola appsettings.json dosyasına kaydedilir)
- Not: Bu işlemler Windows hesabınızın SQL yönetici yetkilerine sahip olmasını gerektirir.
Manuel kurulum
1. Web uygulaması kurulumu
- Ön gereksinimleri kurun (.NET 10 hosting bundle özellikle)
- zip dosyasını çıkarın
- "Talep Sistemi" klasörünün içeriğini web sunucunuzun sanal dizinine kopyalayın (ör.
c:\inetpub\wwwroot\Talep Sistemiveya hosting ortamınıza yükleyin) - oluşturulan dizini IIS içinde uygulama olarak yapılandırın (inetmgr.exe)
2. Veritabanı kurulumu
Aşağıdaki seçeneklerden birini uygulayın
- kurulum klasöründeki "sql" dizinine gidin (ör.
c:\inetpub\wwwroot\Talep Sistemi\sql) - önce
CreateEmptyDB.sql, ardındanCreateTables.sqlscriptlerini çalıştırın (SQL Server Management Studio kullanılabilir) - appsettings.json dosyasını bir metin editörüyle açarak bağlantı cümlesini uygun şekilde düzenleyin (örneğin
(local)\\yerine IP adresi yazılabilir). Not: ters eğik çizgiler (“\”) çift yazılmalıdır:server\\DatabaseName. Kaydetmeden önce doğrulayıcıyı kullanın.
Linux
Bu bölüm, isimsoftware Talep Sistemi’nin Linux üzerinde kurulum sürecini açıklar.
Devam etmeden önce, kendi Linux sunucunuzda bu sistemi çalıştırmak için yeterli sistem yönetimi bilgisine sahip olmanız gerektiğini unutmayın. Eğer deneyimli bir Linux yöneticiniz yoksa bulut sürümü kullanmanız önerilir.
Bu doküman Ubuntu içindir. Diğer dağıtımlarda komutlar farklı olabilir. ASP.NET Core uygulamaları için Microsoft’un resmi dokümantasyonuna da bakabilirsiniz: Linux üzerinde ASP.NET Core barındırma
1. SQL Server kurulumu
Bu örnekte SQL Server Linux üzerine kurulacaktır. Resmi kılavuza buradan ulaşabilirsiniz: Microsoft SQL Server kurulum kılavuzu
Komutlar:
-
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - -
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"Bu komut Ubuntu 20.04 içindir. Dağıtımınıza göre değişebilir.
-
sudo apt-get update -
sudo apt-get install -y mssql-server -
sudo /opt/mssql/bin/mssql-conf setup - Edition seçin (bu örnekte Express kullanılmaktadır)
- lisans şartlarını kabul edin ve SA kullanıcı şifresini belirleyin
- SQL Server kurulumu tamamlanır
-
SQL araçlarını kurun:
curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list -
sudo apt-get update -
sudo apt-get install mssql-tools unixodbc-dev
2. Veritabanı oluşturma
Kurulum paketini indirip açın ve içindeki sql klasörüne gidin. Aşağıdaki scriptler çalıştırılır:
-
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'YOUR PASSWORD' -i CreateEmptyDB.sql -
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'YOUR PASSWORD' -i CreateTables.sql
Not: Scriptler varsayılan bir SQL kullanıcı oluşturur. Şifreyi değiştirmeniz önerilir.
3. Uygulamayı çalıştırma
-
.NET Runtime 10 kurun:
sudo apt-get update && \ sudo apt-get install -y aspnetcore-runtime-10.0 -
Kurulum doğrulama:
dotnet --list-runtimes -
appsettings.jsondüzenleyin:"DBConnectionString": "kullanıcı id=isimsoftwareTalepSistemiUser;data source=localhost;initial catalog=isimsoftwareTalepSistemi;password=HDPassword1" -
Uygulamayı çalıştırın:
dotnet Talep Sistemi.dll -
Tarayıcıdan açın:
http://localhost:5000/
Farklı port için:
dotnet Talep Sistemi.dll --urls http://0.0.0.0:8080
4. Nginx reverse proxy yapılandırması
Bu adım isteğe bağlıdır. ASP.NET Core uygulamaları için reverse proxy kullanımı önerilir.
Resmi kılavuz: Microsoft Nginx rehberi
5. Sunucu yeniden başladığında uygulamanın otomatik başlatılması
Eğer Talep Sistemi uygulamasının sunucu yeniden başlatıldığında otomatik olarak yeniden çalışmasını istiyorsanız, onu bir "servis" olarak kaydetmeniz gerekir.
Servis dosyasını oluşturun:
sudo nano /etc/systemd/system/talepsistemi.service
Dosyanın içine şunu ekleyin:
[Unit]
Açıklama=Talep Sistemi
[Service]
WorkingDirectory=/path/to/app
ExecStart=/usr/bin/dotnet /path/to/app/TalepSistemi.dll
Restart=always
# Dotnet servisi çökerse 10 saniye sonra yeniden başlat:
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=Talep Sistemi
kullanıcı=MyUsername # uygulamanın çalışacağı kullanıcıyı belirtin
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment="ASPNETCORE_URLS=http://127.0.0.1:5001" # port numarası
[Install]
WantedBy=multi-kullanıcı.target
Servisi etkinleştirin:
sudo systemctl enable Talep Sistemi.service
Servisi başlatın:
sudo systemctl start kestrel-helloapp.service
Docker
Bu bölüm, Docker kullanarak isimsoftware Talep Sistemi’nin nasıl kurulup çalıştırılacağını açıklar. Docker Desktop 4.20.1 ile test edilmiştir.
Docker üzerinde barındırma, isimsoftware Talep Sistemi sürüm 10.18 ve sonrasında resmi olarak desteklenmektedir.
Eğer Apple Silicon işlemcili bir Mac üzerinde çalıştırıyorsanız, geliştirme ayarlarından "Apple Silicon üzerinde x86/amd64 emülasyonu için Rosetta kullan" seçeneğini etkinleştirmeniz gerekir.
Kurulum
- isimsoftware Talep Sistemi’ni web sitemizden indirin. Bu bir deneme veya satın alınmış sürüm olabilir.
- İndirdiğiniz dosyayı çalıştırmak istediğiniz klasöre açın ve "Talep Sistemi" klasörüne girin
- Klasör içindeyken
docker compose up --buildkomutunu çalıştırın. İsterseniz-dekleyerek arka planda çalıştırabilirsiniz. - Tüm container’lar başarılı şekilde başlatıldığında, tarayıcıdan http://localhost adresine giderek uygulamayı açabilirsiniz
Tüm isimsoftware sürümleri docker-compose.yml dosyasıyla birlikte gelir. İhtiyacınıza göre düzenleyebilirsiniz. Örneğin reverse proxy kullanacaksanız portu değiştirebilirsiniz.
İlk giriş
Kurulum tamamlandıktan sonra tarayıcınızı açın ve uygulamanın kurulu olduğu adrese gidin (örneğin Windows’ta http://myserver/TalepSistemi veya Linux’ta http://localhost:5000/).
Varsayılan ayarlarla sistem iki hazır kullanıcı ile gelir: admin (şifre: "admin") ve client (şifre: "client"). Güvenlik için bu şifreleri mutlaka değiştirin. Bu hesapları sadece ilk giriş için kullanın.
Uygulamadaki birçok sayfanın altında "Bu sayfa için Yardım Al" bağlantısı bulunur. Buna tıklayarak ilgili sayfa hakkında detaylı bilgiye ulaşabilirsiniz.
Yaygın sorunların çözümü
Tarayıcıda hata görüyorsanız, destek almadan önce şunları kontrol edin:
- Windows’ta ASP.NET Core hosting bundle kurulu olmalı (indir) veya Linux’ta .NET 10 kurulu olmalı (kurulum)
- IIS üzerinde Anonymous Authentication etkin olmalı (çok önemli!)
- Kullandığınız kimlik doğrulama türüne göre Windows Authentication veya Forms Authentication doğru şekilde etkinleştirilmiş olmalı
- Mobil uygulama sorunlarında API test aracı kullanılmalı: http://full_talepsistemi_url/api/test
isimsoftware Talep Sistemini Güncelleme
Windows
Not: Sistem otomatik güncelleme içerir. Kur.exe çalıştırarak en son sürüme yükseltebilirsiniz. Lisanslı kullanıcılar için şifre gerekebilir. Kod değişiklikleri yaptıysanız kaybolabilir.
Adım adım video:
Otomatik güncelleme başarısız olursa:
- Güncel sürümü indirin
- Kur.exe ile veya manuel güncelleme yapın
- Yedek alın
appsettings.jsonhariç tüm dosyaları silin- Yeni dosyaları kopyalayın
- SQL güncelleme scriptini çalıştırın
Linux
Güncelleme işlemi iki adımdır: uygulama dosyaları ve veritabanı güncellemesi.
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'YOUR PASSWORD' -i sql/UpgradeFromOlderVersions.sql -d isimsoftwareTalepSistemi- Yeni dosyaları eski dosyaların yerine koyun (
appsettings.jsonhariç) - Uygulamayı yeniden başlatın
Docker
Güncellemek için:
- Yeni paketi indirin
- Eski dosyaları yenileriyle değiştirin
docker compose stopdocker compose up --build
11.17 ve öncesinden yükseltme
.NET 8’den .NET 10’a geçiş yapılmıştır. Sadece .NET 10 kurmanız yeterlidir.
10.20 ve öncesinden yükseltme
Bu sürümde .NET 5 veya 6’dan (mevcut sürümünüze bağlı olarak) .NET 8’e geçiş yapılmıştır. Windows için sadece .NET 8 Hosting Bundle kurmanız yeterlidir indir veya Linux için .NET 8 SDK kurmanız gerekir: indir. .NET 5/6’yı kaldırmanıza gerek yoktur.
9.36 ve öncesinden yükseltme
10 sürümü ile birlikte “.NET Framework”ten .NET’e (diğer adıyla “.NET Core”) geçiş yapılmıştır. Yükseltmeden önce Microsoft .NET 10 Hosting Bundle kurduğunuzdan emin olun (direkt indir). Ardından Kur.exe’yi çalıştırın; yükseltmeyi otomatik olarak yapacaktır.
Manuel yükseltme yapmak isterseniz Ayarlar’ı web.config dosyasından appsettings.json dosyasına taşımanız gerekir. Buna veritabanı bağlantı stringi, Windows authentication ve web.config içindeki diğer tüm Ayarlar dahildir.
Manuel güncelleme yerine Kur.exe kullanılması önerilir.
Gelişmiş Özellikler
appsettings.json düzenleme
Gelişmiş Talep Sistemi özelliklerinin bir kısmı uygulamanın kök dizinindeki appsettings.json dosyasında yer alır. Bu dosya herhangi bir düz metin editörü ile açılabilir. Değişikliklerin etkili olması için IIS yeniden başlatılmalıdır.
appsettings.json JSON formatındadır. Hata yapılırsa IIS yeniden başlatıldığında uygulama çalışmaz. Kaydetmeden önce doğrulama aracını kullanın.
Tam metin arama
Talep Sistemi, Talep başlıklarını, içeriklerini, yorumları ve özel alanları indeksleyen Lucene tabanlı yerleşik bir arama motoru kullanır. Ek bir SQL Server bileşeni gerekmez.
İlk çalıştırmada arama indeksi yoksa sistem tüm Talepler için arka planda yeniden indeksleme başlatır. Bu işlem kesintiye uğrarsa kaldığı yerden devam eder.
Windows’ta arama indeksi varsayılan olarak C:\ProgramData\isimsoftwareTalepsistemi\SearchIndex dizininde, Linux’ta ise ~/.local/share/isimsoftwareTalepsistemi/SearchIndex dizininde tutulur. Bu konum LuceneIndexPath ayarı ile değiştirilebilir.
Windows’ta izin hatası oluşursa:
- IIS application pool için “Load user profile” aktif edilmelidir.
C:\ProgramData\isimsoftwareTalepsistemiklasörüne IIS kullanıcı hesabına yazma izni verilmelidir.
Otomatik giriş (Autologin)
Talep Sistemi, kullanıcıların şifre girmeden harici bir sistem üzerinden otomatik giriş yapmasını sağlar. Bu özellik geliştiriciler ve entegrasyon yapan sistemler içindir.
-
Kullanıcı sistemde varsa da yoksa da şu format kullanılır:
http://Talepsistemi_Url/User/AutoLogin?username=xxx&email=yyy&userHash=HASH -
Burada HASH şu şekilde hesaplanır:
MD5(name + email + shared-secret + day + month)Shared secret admin panelinden belirlenir. En az 10 karakter önerilir. Gün ve ay iki haneli olmalıdır (örnek: 1 Ocak = 0101).
İsteğe bağlı olarak
FirstName,LastNameveCompanyNameparametreleri eklenebilir.
Ayrıca kullanıcıyı yeni talep oluşturma sayfasına yönlendirmek için &new_ticket=1 eklenebilir.
Talep Sistemi URL
10.15 sürümünden itibaren bu ayar “Administration - General Ayarlar - Talep Sistemi URL” bölümünden yapılabilir.
E-posta bildirimlerinde kullanılan Talep linki, uygulama ilk çalıştığında alınan URL’ye göre belirlenir. Bu davranış override edilebilir.
AI Özellikler (isteğe bağlı ücretli eklenti)
Talep Sistemi, self-hosted Python servis ile benzer bilgi bankası önerileri ve AI destekli arama sağlar. Bu özellik ücretlidir ve v11.22+ gerektirir.
Dosyaları diskte saklama
Varsayılan olarak ekler veritabanında tutulur. İstenirse diske kaydedilecek şekilde yapılandırılabilir.
- Örn:
C:\hdfilesklasörü oluşturun - IIS üzerinden application pool identity bulun
- Bu kullanıcıya klasör üzerinde tam yetki verin
appsettings.jsoniçindeAttachmentsPathayarını yapın:
"AttachmentsPath": "C:\\path\\to\\folder",// ters slash kaçışlıdır
- IIS yeniden başlatın
Windows tümleşik kimlik doğrulama
Active Directory ile entegrasyon desteklenir. Etkinleştirmek için appsettings.json içinde:
"Auth": "Windows"
IIS’te Windows Authentication aktif olmalıdır ve servis yeniden başlatılmalıdır.
İlk girişte domain kullanıcıları otomatik olarak veritabanına eklenir ve AD’den e-posta bilgisi çekilmeye çalışılır.
Windows kullanıcıyı admin yapma
Kur.exe kullanıldıysa kurulum sırasında sorulur. Manuel için:
"WindowsAdminUsername": "DOMAIN\\kullanıcı"
Not: Büyük/küçük harf duyarlıdır. Doğru kullanıcı adını görmek için whoami komutunu kullanın.
API ve E-posta API
Uygulama REST API içerir:
http://servername/talepsistemi/api/
API
Dokümantasyon: burada
E-posta API
appsettings.json doğrulayıcı
JSON hatalarını kontrol etmek için araç:
Gelişmiş appsettings.json Ayarları
"WindowsAdminUsername": "DOMAIN\kullanıcı"
Windows authentication kullanıyorsanız ve admin erişimi alamıyorsanız bu alanı doldurun.
"LogErrors": true
Log Talep Sistemi hatalarını sunucu olay günlüğüne kaydedin
"EmailErrorTo": "admin-john@test.com, admin-pete@test.com" Hata bildirimlerini bu adreslere gönderin
"DisallowChangingAvatars": "false" Kullanıcıların avatar değiştirmesini kısıtla (örneğin, avatarlarınız AD üzerinden senkronize ediliyorsa)
"AttachmentsPath": "c:\hdfiles" Talep Sistemi eklerini veritabanı yerine diskte sakla. Gelişmiş ayar, dokunmayın.
"DisableMailChecker": "true" Mail içe aktarma modülünü hata ayıklama amaçlı devre dışı bırakın. Gelişmiş, dokunmayın.
"AllowedFileExtensions": ".png,.pdf" yükleme için izin verilen dosya uzantıları.
"ProxyIP": "192.168.1.1" Eğer Talep Sistemi başka bir makinede çalışan bir ters proxy arkasında çalışıyorsa, bu değeri ters proxy sunucusunun IP adresi olarak ayarlamanız gerekir. Yerel proxy IP adresi varsayılan olarak çalışır.
"MailPswEncryptKey": "" E-posta sunucusu şifreleri veritabanında bu anahtar kullanılarak şifrelenir (boş değilse). 8 karakter olmalı, yalnızca Latin harfleri/rakamlar içermelidir. Örnek "18d6fg81". BU ANAHTARI YEDEKLEYİN VE BİR KEZ AYARLADIKTAN SONRA ASLA DEĞİŞTİRMEYİN. Aksi halde veritabanındaki posta kutusu şifreleri kaybolur ve uygulamada yeniden oluşturmanız gerekir.