Jump to content

Manual:$wgActionPaths

From mediawiki.org
This page is a translated version of the page Manual:$wgActionPaths and the translation is 100% complete.
Sunucu URL'ler ve dosya yolları: $wgActionPaths
Çeşitli kullanıcı eylemleri için yollar. URL'leri daha güzel yapmak için kullanılır.
Sürümde tanıtıldı:1.5.0 (r7538)
Sürümde kaldırıldı:hala kullanımda
İzin verilen değerler:Belirtilmemiş
Varsayılan değer:[]

Ayrıntılar

Manuel:Kısa URL kurun ve önce çalıştığından emin olun

Düz sayfa görünümleri dışındaki eylemler için 'pretty' URL yolları ayarlamak üzere bu diziye ekleyin.

Örneğin:

$wgActionPaths['edit'] = "$wgScriptPath/edit/$1";

Bu değişkeni ayarlamaya ek olarak, bu URL'leri işlemek için uygun bir betik veya sunucu yeniden yazma kuralı koymanız gerekir.

Örnek yapılandırmalar

Bu örnekler, mod_rewrite kullanan Apache sunucuları için örnek .htaccess dosyalarını içerir.

Diğer sunucular, URL yeniden yazımlarını gerçekleştirmenin başka yollarına sahip olacaktır.

Kökten eylem yolları

Bu, http://mywiki.example.com/edit/Cucumber vb. biçiminde eylem yollarını ayarlar.

LocalSettings.php
$actions = [
	'view',
	'edit',
	'watch',
	'unwatch',
	'delete',
	'revert',
	'rollback',
	'protect',
	'unprotect',
	'markpatrolled',
	'render',
	'submit',
	'history',
	'purge',
	'info',
];

foreach ( $actions as $action ) {
  $wgActionPaths[$action] = "/$action/$1";
}
$wgArticlePath = $wgActionPaths['view'];

ekstra htaccess kuralları

.htaccess
"/w/index.php" dosyasını MediaWiki'nin kurulu olduğu yere değiştirdiğinizden emin olun
RewriteRule ^/([a-z]*)/(.*)$ %{DOCUMENT_ROOT}/w/index.php [L,QSA]

sonuna eylem

Bu, http://mywiki.example.com/Cucumber/edit vb. biçiminde eylem yollarını ayarlar.

$actions = [
	'edit',
	'watch',
	'unwatch',
	'delete',
	'revert',
	'rollback',
	'protect',
	'unprotect',
	'markpatrolled',
	'render',
	'submit',
	'history',
	'purge',
	'info',
];

foreach ( $actions as $action ) {
  $wgActionPaths[$action] = "/$1/$action";
}
$wgActionPaths['view'] = "/$1";
$wgArticlePath = $wgActionPaths['view'];

Kök olmayan eylem yolları

Standart example.com/wiki/Main_Page için example.com/wiki/view/Main_Page yeniden yazılanlar için yukarıdaki yapılandırmayı kullanın ve bu satırı "/wiki" içerecek şekilde değiştirin:

foreach ( $actions as $action ) {
  $wgActionPaths[$action] = "/wiki/$action/$1";
}

Standart example.com/wiki/Main_Page görünüm URL'leri için ve example.com/wiki/edit/Main_Page olarak yeniden yazılır

$actions = [
	'edit',
	'watch',
	'unwatch',
	'delete',
	'revert',
	'rollback',
	'protect',
	'unprotect',
	'markpatrolled',
	'render',
	'submit',
	'history',
	'purge',
	'info',
];

foreach ( $actions as $action ) {
  $wgActionPaths[$action] = "/wiki/$action/$1";
}
$wgActionPaths['view'] = "/wiki/$1";
$wgArticlePath = $wgActionPaths['view'];

sonuna eylem

Standart example.com/wiki/Main_Page görünüm URL'leri için ve example.com/wiki/Main_Page/edit olarak yeniden yazılır

Bu şekilde kurulum yaparken diziden "delete, edit, watch, unwatch" vb. adlı ana sayfaların alt sayfalarını alamazsınız.
$actions = [
	'view',
	'edit',
	'watch',
	'unwatch',
	'delete',
	'revert',
	'rollback',
	'protect',
	'unprotect',
	'markpatrolled',
	'render',
	'submit',
	'history',
	'purge',
	'info',
];

foreach ( $actions as $action ) {
  $wgActionPaths[$action] = "/wiki/$1/$action";
}
$wgActionPaths['view'] = "/wiki/$1";
$wgArticlePath = $wgActionPaths['view'];

Sanal eylem / dizinler

Bu, http://mywiki.example.com/wiki/action/edit/Cucumber vb. gibi URL'ler oluşturur.

Belirli bir yola çoğu[1] eylemi yeniden yazmak için LocalSettings.php dosyasında aşağıdaki değişiklikler yapılabilir:

$actions = [
	'view',
	'edit',
	'watch',
	'unwatch',
	'delete',
	'revert',
	'rollback',
	'protect',
	'unprotect',
	'markpatrolled',
	'render',
	'submit',
	'history',
	'purge',
	'info',
];

foreach ( $actions as $action ) {
  $wgActionPaths[$action] = "$wgScriptPath/action/$action/$1";
}
$wgArticlePath = $wgActionPaths['view'];

Apache'de, aşağıdakine benzer bir yeniden yazma kuralı kodlayın:

RewriteRule ^/action/([a-z]*)/(.*)$ /index.php [L,QSA]

Bu, tüm istekleri /action/actionword/title ile, $wgActionPaths ayarlarınıza göre eylemi ve başlığı ayrıştıracak olan MediaWiki'nin index.php dosyasına iletecektir.

Apache mod_negotation, bu yöntemi kullanırken PHP betiklerini çalıştıracak şekilde yapılandırılırken, bazı durumlarda bir dizin listesini açığa çıkarabilecek 406 Kabul Edilemez hatalara neden olmamaya dikkat edilmelidir, [1], [2] bakın. Ayrıca bakınız bugzilla:21617.

Spam önlemesi

$wgActionPaths kullanmak, özellikle edit eylemi için madde düzenlemelerini deneyen spam botların sayısını azaltmaktadır. Botların bir MediaWiki kurulumunu tanımlamak ve uygun şekilde hareket etmek için action=edit aramaya programlandığından şüpheleniliyor. Bunu akılda tutarak, botların action/edit aramaya başladıklarında sitenizi bulamaması için action ine görünür olmayan bir önek eklemek faydalı olacaktır.


  1. Şu anda 'raw' eylem için $wgActionPath ile sahip olmak mümkün değil.