try_files $uri $uri/ @fallback;
|
Not
Bu makalede Apache ve Nginx web sunucularının ayarları açıklanmaktadır.
|
- Web alanı ayarlarıyla ilgili bilgiler ISPmanager dahili tabanında tutulur. Yapılandırma dosyalarında yapılan manuel değişiklikler, yaptığınız ayarlar kontrol panelinde yapılandırılanlarla manuel olarak çakışırsa, kontrol panelindeki parametreleri değiştirirken kaybolacaktır. Bu değişiklikler, mümkünse bir etki alanını düzenlerken kaydedilecektir.
- Her web alan adının ayarları ayrı bir dosyada tutulur. Dosyalar, alan adının adına göre dizinlerde bulunur.
- Dizinlere erişim (diraccess), ilgili web-domain’in ayarlarıyla dosyadaki web-server yapılandırma dosyasında belirtilir (.htaccess önceki sürümde kullanılmıştır)
- PHP hem Apache hem de Nginx üzerinden çalışabilir (php-fpm kullanılır). Artık PHP’yi Apache olmadan kullanabilirsiniz, Apache ve Nginx kullanmak, istek Nginx tarafından işlenebiliyorsa Apache sunucusunu başlatamayabilir.
- Web alanı için birden fazla IP adresi kullanabilirsiniz.
- Nginx ayarlarında SSL’yi etkinleştirmek ayrı bir “sunucu” bölümü oluşturacaktır
- Logrotate, günlükleri ve hataları döndürmek için kullanılır.
Web Server ayarları
Web sunucunuzun türü ne olursa olsun aşağıdaki parametreler kullanılır.
path php-cgi <full path>
Yürütülebilir php-cgi’ye giden dosya yolu
WebDefaultAliases <list of aliases>
Bir web alanı sipariş ederken kullanıcılara sunulacak takma adların listesi. Satırı ana etki alanının adına eklemek için _name_ makrolarını kullanabilirsiniz.
BackendBind <ip address+port>
Arka ucun kurulacağı IP adresi (ön uç sunucusunun istek göndereceği web sunucusu). Hem Nginx hem de Apache arka ucu yüklüyse — Apache.
WebModules <list of module>
List of web-domains that are used.
WebGroup <name>
Web sunucusunun kullandığı ayrıcalıklı bir grup (geçmek yerine adı belirtmeniz gerekir).
WebRestartDelay <seconds>
Sunucunun yeniden başlatılması arasındaki minimum süre.
ApsExtRepository <repository URL>
Harici APS’nin xml dosyasına giden bir yol.
Option ApsRepositoryUpdated
Paneli başlatırken APS-scrips listesini güncellemeyin.
Option DisableSecurePhpBin
Kullanıcı ana dizininden kullanıcı için php-bin güvenli dizinini (DefaultHomeDir/php-bin/username) ve php.ini için sabit bağlantıları güvenli bir dizine (php CGI veya FastCGI (Apache) olarak) oluşturmayın. php ve php.ini kullanıcının php-bin dizininde oluşturulacaktır.
Dosyadan web alanı için kullanılabilir kodlama listesi: etc/charset. Varsayılan olarak yalnızca utf-8 belirtilmiştir.
Apache yapılandırması
When the panel starts is gets the information about Apache modules:
cgi_module
Support of CGI scripts
fastcgi_module or fcgid_module
Support of PHP as FastCGI
php5_module
Support of PHP as Apache module
CGI destekleniyorsa, belirtilen dosya path php-cgi, PHP’yi CGI olarak kullanabileceksiniz
Denetim panelini belirli bir Apache sürümüne göre yapılandıracak parametrelerin bir listesi aşağıdadır:
Option ApacheITK
Apache ITK kullanılıyorsa eklenir. SuexecUserGroup yönergesi yerine AssignUserID belirtilmiştir.
path apachectl <name>
Apache’nin yeniden başlatılması için kullanılan programa/komut dosyasına giden bir yol. Aşağıdaki parametreleri işlemelidir:-M (get a list of modules), graceful (soft reboot), restart (hard reboot, which is used when adding/deleting IP addresses)
path apache-vhosts <directory>
Web-domain ayarlarına sahip dosyaların oluşturulacağı bir dizin
path apache.conf <path>
Listen ve NameVirtualHost’un belirtileceği Apache ana yapılandırma dosyasına giden bir yol
ApacheWidePorts <list of ports>
Sunucunun tüm IP adresi için Apache Listen’deki bağlantı noktalarını belirtmek için eklenecektir. Varsayılan olarak: 80 443. Bu, Apache’nin hard restart sayısını azaltmayı sağlayacaktır.
Nginx yapılandırması
Kontrol paneli php-fpm’nin etkin olup olmadığını kontrol eder. Bulunursa, FastCGI olarak PHP web alanı ayarlarında kullanılabilir.
Kontrol panelini özelleştirmek için kullanılan parametrelerin bir listesi aşağıdadır:
path nginx-vhosts <directory>
Web-domain ayarlarına sahip dosyaların oluşturulacağı bir dizin
path nginx-vhosts-includes <list of directories>
Her etki alanı için “sunucuya” eklenecek ek ayarlara sahip dosyalara giden yollar (the Include directory is used)
path fpm-pool.d <directory>
Php-fpm ayarlarına sahip dosyaların oluşturulacağı bir dizin
path fpm-service <name>
Php-fpm hizmetinin adı. Yeni kullanıcı oluşturulduktan sonra yeniden başlatmak için kullanılır.
path nginx-static <regular expression>
Nginx’in göndermesi gereken dosyaları tanımlamak için kullanılır.
path nginxctl <command>
Yeni web alanları eklerken Nginx’i yeniden başlatmak için kullanılır. Aşağıdaki parametreleri işlemelidir:reload (re-read the web-domain settings), restart (restart Nginx that is used for adding/deleting IP addresses), stop/start (restart Nginx is used for converting settings in case the web-domain is added/deleted)
path nginx-configtest <command>
Nginx yapılandırma dosyasının içeriğini kontrol edin. Varsayılan değer nginxctl configtest yoludur
path nginx <command>
Nginx performansını kontrol etmek için paneli yeniden başlatın. -V parametresini doğru şekilde işlemelidir
ForwardedSecret <string>
Sahte IP adreslerini önlemek için kullanılır
Örnek
Ayar
path nginx-static ~* ^youscript\.ext$
Konum oluşturacak
location ~* ^youscript\.ext$ {
try_files $uri $uri/ @fallback;
}
Bunun yerine;
location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
try_files $uri $uri/ @fallback;
}
ForwardedSecret
Nginx’ten gelen istekleri panele yönlendirirseniz, X-Forwarded-For HTTP başlığı tarafından bir ters adres tanımlarız. Dolandırıcı, bu başlığı kullanarak COOKIE’yi başka bir kullanıcıymış gibi istek göndermek için kullanmasını sağlayan bir ters adresi değiştirebilecektir. İstek, yapılandırma dosyasında belirtilen değere sahip X-Forwarded-Secret içermiyorsa, panel X-Forwarded-For’u yok sayacaktır.
