site adresini yaz. en alttaki sunucu değerlerini ister kaldır isterr kendi sunucuna göre editle.
Hiçbir yerde adam akıllı .htaccess üretemiyorum kendim yazamıyorum bilmiyorum çünkü. GPT ile denedim bütün sayfaları patlattı ne yapmam gerekiyor ?
# ============================================
# CMS - SEO & Performance .htaccess
# ============================================
# --- HTTPS Zorla ---
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# --- www → non-www ---
RewriteCond %{HTTP_HOST} ^www\.siteadresin\.com [NC]
RewriteRule ^(.*)$ https://siteadresin.com/$1 [L,R=301]
# --- Trailing Slash (SEO) ---
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} \.[a-zA-Z]{2,}$
RewriteRule ^(.*)$ /$1/ [L,R=301]
# --- Klasör index dosyaları ---
DirectoryIndex index.php index.html
# --- 404 Hata Sayfası ---
ErrorDocument 404 /404.php
# --- Gzip Sıkıştırma ---
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/json
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom+xml
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-font-opentype
</IfModule>
# --- Tarayıcı Önbellekleme ---
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 month"
ExpiresByType text/html "access plus 0 seconds"
ExpiresByType text/xml "access plus 0 seconds"
ExpiresByType application/json "access plus 0 seconds"
ExpiresByType application/xml "access plus 0 seconds"
ExpiresByType text/css "access plus 1 year"
ExpiresByType text/javascript "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType application/x-javascript "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/webp "access plus 1 year"
ExpiresByType image/svg+xml "access plus 1 year"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresByType font/woff "access plus 1 year"
ExpiresByType font/woff2 "access plus 1 year"
ExpiresByType font/ttf "access plus 1 year"
ExpiresByType font/opentype "access plus 1 year"
ExpiresByType application/vnd.ms-fontobject "access plus 1 year"
</IfModule>
# --- Cache-Control Headers ---
<IfModule mod_headers.c>
<filesMatch "\.(ico|jpe?g|png|gif|webp|svg|woff|woff2|ttf|otf|eot)$">
Header set Cache-Control "public, max-age=31536000, immutable"
</filesMatch>
<filesMatch "\.(css)$">
Header set Cache-Control "public, max-age=31536000, immutable"
</filesMatch>
<filesMatch "\.(js)$">
Header set Cache-Control "public, max-age=2678400"
</filesMatch>
<filesMatch "\.(html|htm|php)$">
Header set Cache-Control "no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "0"
</filesMatch>
</IfModule>
# --- SEO Header'ları ---
<IfModule mod_headers.c>
Header set X-Content-Type-Options "nosniff"
Header set X-Frame-Options "SAMEORIGIN"
Header set X-XSS-Protection "1; mode=block"
Header set Referrer-Policy "strict-origin-when-cross-origin"
Header set Permissions-Policy "camera=(), microphone=(), geolocation=()"
</IfModule>
# --- ETag Kaldır (Cache提速) ---
<IfModule mod_headers.c>
Header unset ETag
</IfModule>
FileETag None
# --- Güvenlik: Hassas Dosyaları Engelle ---
<FilesMatch "^(db\.php|config\.php|functions\.php|content\.php|send_mail\.php|license\.php|\.env|composer\.(json|lock))$">
<IfModule mod_authz_core.c>
Require all denied
</IfModule>
<IfModule !mod_authz_core.c>
Order Allow,Deny
Deny from all
</IfModule>
</FilesMatch>
# --- Klasör Listelemeyi Engelle ---
Options -Indexes
# --- .git, .env, backup dosyalarını engelle ---
<IfModule mod_rewrite.c>
RewriteRule ^\.git - [F,L]
RewriteRule ^\.env - [F,L]
RewriteRule ^\.htaccess$ - [F,L]
RewriteRule \.(sql|bak|old|log|ini|sh)$ - [F,L]
</IfModule>
# --- PHP Eş Zamanlılıksız ---
<IfModule mod_php7.c>
php_flag display_startup_errors off
php_flag display_errors off
php_flag log_errors on
</IfModule>
<IfModule mod_php.c>
php_flag display_startup_errors off
php_flag display_errors off
php_flag log_errors on
</IfModule>
# --- Resource Limits ---
<IfModule mod_php7.c>
php_value max_execution_time 60
php_value memory_limit 256M
php_value post_max_size 20M
php_value upload_max_filesize 10M
</IfModule>
<IfModule mod_php.c>
php_value max_execution_time 60
php_value memory_limit 256M
php_value post_max_size 20M
php_value upload_max_filesize 10M
</IfModule>