SSL .htaccess - Basit Q

Nov 13 2020

Bu dosyadan gerçekten nefret ediyorum ... Bunu anlamaya 6.5 saat harcadım ve DEHB disleksi ile bu imkansız !! SSL için satın aldığım bir etki alanım var (şu anda WWW için SSL'nin başlamasını beklemem gerekiyor ama şimdilik WWW'siz etki alanı çalışıyor, örneğin:

https://tomas.com

Kökte sahip olduğum .htaccess şu anda:

RewriteEngine On
RewriteCond %{HTTP_HOST} tomas\.com [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://tomas.com/$1 [R,L]

Ve yukarıdaki kod aslında iyi olan SSL'yi etkinleştirir. Mesele şu ki, kök etki alanında birkaç dosyam var ama bunlardan birinin adı:

hello.php ("tomas.com/hello.php" adresinde bulunur)

Eğer gidersem: http://tomas.com/helloBu dosyayı görüntülemesini istiyorum (ve adres çubuğunda şunu söylemeli: "http://tomas.com/hello"). SSL'den önce bu koda sahiptim ve işe yaradı (ama artık değil):

RewriteRule ^([^/]*)/?(.*)$ $1.php

.Htaccess'in nasıl görünmesi gerektiği hakkında bir fikriniz var mı? : /

Aynı zamanda, www KULLANMAMASI için ZORLAMAYA ÇALIŞIYORUM (bu yüzden, bunu yaparsa WWW olmayan bir url'ye yönlendirilmelidir) Şimdiden çok teşekkür ederim !!!!!!!!!!!

Yanıtlar

1 MrWhite Nov 14 2020 at 03:02

SSL'den önce bu koda sahiptim ve işe yaradı (ama artık değil):

RewriteRule ^([^/]*)/?(.*)$ $1.php

Bunun daha önce nasıl "çalıştığından" emin değilim, kendi kendine tamamlanmıyor ve sadece bir .phpuzantı ekleyerek daha fazlasını yapıyor . Yeniden yazma döngüsünü önlemek için bir şeye ihtiyacınız var, çünkü hello.phpaynı zamanda desenle eşleşiyor ^([^/]*)/?(.*)$.

Bunun yerine, HTTP'den HTTPS'ye yönlendirmenizden sonra aşağıdakini deneyin .

RewriteCond %{DOCUMENT_ROOT}/$1.php -f
RewriteRule (.*) $1.php [L]

Bu, .phpdahili olarak yeniden yazmadan önce dosya uzantılı dosyanın var olup olmadığını kontrol eder .

Alternatif olarak , başka bir URL yeniden yazma işlemi yapmıyorsanız, bunun yerine MultiViews'ı etkinleştirebilirsiniz. Örneğin, dosyanızın en üstünde:

Options +MultiViews

Bu mod_negotiation'ı temelde her şey için uzantısız URL'leri etkinleştirmek için kullanır !