Forum
mrb windows 2008 server sunucumda cmd ye full kontrol vermek istiyorum ama hata alıyorum bunu nasıl yapabilir ?
Merhaba
Çünkü bu exe üzerinde okuma dışında yetkiniz yok . Öncelikle sahipliğini alıp ardından bu değişikliği yapabilirsiniz. Ayrıca buna neden ihtiyaç duyuyorsunuz ?
Run as administrator için ise bu işe yaramayacaktır 🙂
Danışman - ITSTACK Bilgi Sistemleri
****************************************************************
Probleminiz Çözüldüğünde Sonucu Burada Paylaşırsanız.
Sizde Aynı Problemi Yaşayanlar İçin Yardım Etmiş Olursunuz.
Eğer sorununuz çözüldü ise lütfen "çözüldü" olarak işaretlerseniz diğer üyeler için çok büyük kolaylık sağlayacaktır.
*****************************************************************
php ile ilgili bir problem yasıyorum xp de yaptıgım php panel çalışıyo ama server2008 de çalışmıyor cmd ile oyun .exe çalıştırıyorum php ile yaptıgım araştırmada xp de cmd özelliği aşağıdaki resim gibi windows serverda da yukardaki gibi ayarları degiştirirsem sorunu düzelcemi zannediyorum nasıl degiştirebilirim tşk
Merhaba,
CPanel ile alakalı bir sorun mudur yoksa PHP'de exec ile oyun.exe çalıştırmaya mı çalışıyorsunuz? Biraz daha detaylı bilgi verebilir misiniz?
PHP'de exec ile oyun.exe çalıştırmaya çalışıyorum yukarda dedigim gibi xp de çalışıyor fakat win2008 de çalışmıyor
eğer sadece oyun.exe'yi çalıştırmak istiyorsanız cmd.exe'ye izinleri vermek güvenlik açığına sebep olur. Sanırım imagemagick kurulumuna benzer bir biçimde yol takip edip cmd.exe'ye izin vererek uygulamanızı çalıştırmak istiyorsunuz.
Yeni bir php dosyasına aşağıdaki kodu yazıp çalıştırın :
<?php
exec('oyun_exe_yolu 2>&1', $output);
var_dump($output);
?>
oyun_exe_yolu
kısmı oyun.exe'nin sunucuda bulunduğu path olmalı ve backslash'ları çift halinde yazmalısınız. Örn : D:\\klasor\\oyun.exe
2>&1
kısmı ise exec'te oluşan hataları (windows ortamında da) print etmemizi sağlar. Dosyayı çalıştırıp ekrana düşen çıktıyı burada paylaşın.
Ek bilgi olarak, IIS üzerinde exe dosyasına çalıştırma izni sözkonusu olduğunda IUSR kullanıcısına Execute iznini vermeniz gerekir. oyun.exe dosyası için bu
izni vermeyi deneyin, eğerki uygulamanız yine çalışmaz ise cmd.exe için de güvenlik açığını göze alıp izin vermeniz gerekecek. Bu da sorunu çözmez ise DefaultAppPool'u uygulamanıza ilişkilendirmeniz gerekecek. Burada sonuçları bildirin, yardımcı oluruz.
<?php exec('c:\game\cod2\CoD2MP_s.exe +set dedicated 2 +set fs_basepath c:\game\cod2 +set fs_game x +net_ip 94.168.169.11 +set net_port 28988 +exec server.cfg +map_rotate +set sv_maxclients 20 +set sv_punkbuster 1', $output); var_dump($output); ?> bu şekilde gene aynı sorunu yaşıyorum oyunun exesi görev yöneticisinden bakınca sistem altında çalışıyo dolayısıyla oyun açmıyor ama bu kod xp de çalışıyo xp ve win 2008 serverda xampp yüklü... yukarıda ki resimdeki gibi normal çalıştırdıgım administrator olarak ama php ile çalıştırdıgım sistem olarak gözüküyor
c:\game\cod2\ altında bir bat dosyası oluşturun ve içine oyunu başlatacak olan windows kodlarını yazın.Gördüğüm kadarıyla bu kod tek satırdan oluşacak :
CoD2MP_s.exe +set dedicated 2 +set fs_basepath c:\game\cod2 +set
fs_game x +net_ip 94.168.169.11 +set net_port 28988 +exec server.cfg
+map_rotate +set sv_maxclients 20 +set sv_punkbuster 1
diyelim ki bu dosya start_game.bat olsun
sonrasında php ile tek satır yeterli olacaktır :
<?php
exec('c:\\game\\cod2\\start_game.bat');
?>
windows ortamında php ile full path çağırırken backslash ( \ ) karakterini çifter çifter yazmanız gerekiyor.
Call of Duty ile ilgili bilgim yok ancak bu konuda daha ileri seviye işler denenmiş mesela oyun ayarlarının form üzerinden submit edilerek sunucuda çalıştırılması gibi : http://forums.tizag.com/showthread.php?t=2836
Post'un 2. sayfasının sonuna göz atın. Yalnız buradaki vatandaş da exe dosyasının path'lerini çağırmakta takılmış. Önce klasör oluşturuyor, sonra içine oyunun ayarlarını içeren 3 dosya yazdırıyor. Sonrada dosyayı çağırmaya uğraşıyor ama yapamıyor. Son satırda bat dosyasını çağırırken şunu kullanmış :
system("../../cod_servers/server3/$folder/server.bat");
Oysa benim verdiğim örnekteki gibi full path çağırması gerekiyor. İki türlü de deneyebilirsiniz, ilki pratik yoldur, ikincisi o forumda yer alan meşakatli yol. Tercih sizin...