.htaccess dağıtılmış bir konfigürasyon dosyasıdır ve Apache’nin konfigürasyon değişikliklerini dizin bazında işleme şeklidir. WordPress bu dosyayı Apache’nin kök dizinindeki ve alt dizinlerindeki dosyaları nasıl sunacağını değiştirmek için kullanır. En önemlisi, WP bu dosyayı kalıcı bağlantıları yönetebilecek şekilde değiştirir. Bu sayfa, bozuk bir .htaccess dosyasını (örn. hatalı çalışan bir eklenti) geri yüklemek için kullanılabilir. Siteniz bilmediğiniz bir nedenden dolayı bozulmuşsa bazen varsayılan htaccess dosyasını yüklemek veya yüklemek sorunu çözebilir.
.htaccess dosyası, bir web sunucusunda bulunan, sunucunun davranışını yapılandırmak için kullanılan bir konfigürasyon dosyasıdır. Bu dosya, Apache web sunucusu tarafından yaygın olarak kullanılır ve genellikle “gizli” olarak adlandırılır çünkü dosyanın adının başında bir nokta vardır, bu da işletim sistemleri tarafından gizli olarak işaretlenir.
.htaccess dosyasının temel amacı, web sunucusunun belirli dizinler veya dosyalar üzerinde nasıl davranacağını belirtmektir. Bu dosya, genellikle bir web sitesinin kök dizininde veya belirli bir dizinde bulunabilir ve o dizin ve alt dizinlerindeki tüm dosyalar için yapılandırma yönergeleri sağlar.
Bu dosya, çeşitli görevleri yerine getirebilir, örneğin:
- Yönlendirme (Redirect): .htaccess dosyası, belirli URL’leri başka bir URL’ye yönlendirmek için kullanılabilir. Bu, özellikle bir sayfanın taşındığı veya URL şemasının değiştiği durumlarda kullanışlıdır.
- Güvenlik: .htaccess, belirli dizinlere veya dosyalara erişimi kısıtlamak için kullanılabilir. Örneğin, belirli IP adreslerinden gelen istekleri engellemek veya belirli bir kullanıcı adı ve şifre ile korunan bölgelere erişimi sağlamak için kullanılabilir.
- Hata Yönetimi: .htaccess dosyası, belirli HTTP hata kodlarını özelleştirmek için kullanılabilir. Örneğin, 404 hata sayfasını özelleştirmek mümkündür.
- Cache Kontrolü: .htaccess, web tarayıcılarındaki önbelleği yönetmek için kullanılabilir. Bu, sayfa yükleme hızını artırabilir.
- MIME Türleri: .htaccess dosyası, belirli dosya türlerinin nasıl işleneceğini belirtmek için kullanılabilir. Örneğin, belirli bir uzantıya sahip dosyaların tarayıcıya nasıl servis edileceğini belirleyebilir.
- Sunucu Ayarları: .htaccess, sunucunun çalışma şeklini değiştirmek için kullanılabilir. Örneğin, karakter kodlaması veya dil ayarları gibi.
.htaccess dosyasının doğru şekilde yapılandırılması, bir web sitesinin performansını, güvenliğini ve erişilebilirliğini artırabilir. Ancak, yanlış yapılandırılmış bir .htaccess dosyası, web sitesinin düzgün çalışmasını engelleyebilir veya güvenlik açıklarına neden olabilir. Bu nedenle, bu dosyayı düzenlerken dikkatli olunmalı ve gerektiğinde yedek alınmalıdır.
Htaccess Sıfırlama
Temel bir WordPress siteniz varsa basic WP kısmından kodu alıp sitenizin ana dizininde yer alan .htaccess adındaki dosyaya sağ tıklayıp düzenle dedikten sonra bu kodu yapıştırmanız yeterlidir. Bu işlem sitenizde bunla ilgili sorun varsa fabrika ayarlarına dönderecektir.
Basic WP
# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPressMultisite
WordPress 3.5 ve üstü
Subfolder (Altklasör) Örnek
# BEGIN WordPress Multisite
# Using subfolder network type: https://wordpress.org/documentation/article/htaccess/#multisite
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
# END WordPress MultisiteSubDomain (Alt Alan Adı) Örnek
# BEGIN WordPress Multisite
# Using subdomain network type: https://wordpress.org/documentation/article/htaccess/#multisite
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
# END WordPress MultisiteWordPress 3.4 ve altı
WordPress’i orijinal olarak 3.4 veya daha eski bir sürümle yüklediyseniz ve Multisite’ı etkinleştirdiyseniz aşağıdakilerden birini kullanmanız gerekir:
Subfolder (Altklasör) Örnek
# BEGIN WordPress Multisite
# Using subfolder network type: https://wordpress.org/documentation/article/htaccess/#multisite
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
# END WordPress MultisiteSubDomain (Alt Alan Adı) Örnek
# BEGIN WordPress Multisite
# Using subdomain network type: https://wordpress.org/documentation/article/htaccess/#multisite
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule . index.php [L]
# END WordPress MultisiteWordPress Default .htaccess
.htaccess is a distributed configuration file and is how Apache handles configuration changes on a directory-by-directory basis. WordPress uses this file to change how Apache serves files in its root directory and subdirectories. Most importantly, WP modifies this file to be able to manage permalinks. This page can be used to restore a corrupt .htaccess file (e.g. a malfunctioning plugin). If your site is broken for a reason you don’t know about, sometimes downloading or installing the default htaccess file can fix the problem.








