Mam pewne problemy z wieloma instalacjami wordpress i .htaccess
przepisać reguły, głównie dla wymuszania https, ale również usuwania www. z dowolnej domeny.Wymuszenie braku strony WWW, ale wymuszenie https na całym Wordpress i całej domenie
domen/subdomen:
- Wordpress 1:
examplewebsite.com
(/home/hostingacc/public_html/
) - Wordpress 2:
test.examplewebsite.com
(/home/hostingacc/public_html/test/
) - Wordpress 3:
moretests.examplewebsite.com
(/home/hostingacc/public_html/moretests
)
.htaccess przepisuje
Próbowałem użyć kilku reguły przepisywania które znalazłem w internecie, nie wiem, co z nich jest najlepszy z nich korzystać, ale poniżej to główne zasady przepisujące że użyłem
RewriteEngine On
RewriteCond %{HTTP_HOST}#%{HTTPS}s ^www\.([^#]+)#(?:off|on(s)) [NC]
RewriteRule^http%2://%1%{REQUEST_URI} [R=301,L]
że mam z https://github.com/h5bp/server-configs-apache/issues/48 ale jak wcześniej wspomniano, jednym z nich może być lepiej nadaje się WYMUSZENIE HTTPS i mocno USUWANIE WWW
RewriteEngine On
RewriteCond %{SERVER_PORT} 80 [OR]
RewriteCond %{HTTP_HOST} ^www.examplewebsite.com
RewriteRule ^(.*)$ https://examplewebsite.com/$1 [L,R=301]
lub
RewriteEngine On
RewriteCond %{HTTPS} !=on [OR]
RewriteCond %{HTTP_HOST} !^examplewebsite\.com$ [NC]
RewriteRule^https://examplewebsite.com%{REQUEST_URI} [R=301,L]
lub
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTP_HOST} ^www*\.(.*examplewebsite\.com)$ [NC]
RewriteRule^https://%1%{REQUEST_URI} [R=301,L]
lub
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www*\.(.*examplewebsite\.com)$ [NC]
RewriteRule^https://%1%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTPS} !=on
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Wszystkie z powyższych zasad, wydają się działać w odniesieniu do wymuszania https i usuwanie www na głównej instalacji wordpress, ale przepisy nie obowiązują obecnie do subdomen lub /wp-admin/
podkatalogów dla każdej instalacji wordpress, zakładam, że jest tak dlatego, że w każdym z tych katalogów znajduje się plik .htaccess
.
Issue Podsumowanie
examplewebsite.com (strona główna) jest prawidłowo zmuszone zawsze używa protokołu HTTPS, a także jest zmuszony do usunięcia www. ALE ... problem znajduje się na examplewebsite.com/wp-admin/, który nadal poprawnie wymusza https (albo przez regułę, albo poprzez wpl-config.php wymuś admin ssl, ale nie usunie fortuny www. Powód jest taki, ponieważ mam następujący plik .htaccess znajdujący się w folderze/wp-admin /, więc wygląda na to, że potrzebuję reguły dla htaccess w tym folderze, aby wymusić usunięcie strony www, a także wymusić https.
test.examplewebsite.com i moretests.examplewebsite.com (subdomeny) oba mają problem, gdzie nie zmusza hTTPS i nie jest też siłą usuwając www.
test.examplewebsite.com i moretests.examplewebsite. com (subdomeny) mają również ten sam problem co pierwszy/wp-admin/robi nie usuń na siłę www.
Jeśli przejdę do ustawień lub SQL dla moich poddomen, a nawet edytuję wp-config.php, aby zastąpić SQL i zmienić adres URL strony i strony głównej, aby mieć https i nie mieć strony www.(The https powoduje ten problem), a następnie instalacje wordpress stać inacessable, znikają i odwiedzając linki do subdomen przekierowania/ładuje główną stronę internetową zamiast
Konfiguracje
- examplewebsite.com - aktualny. pliki .htaccess
strona:http://pastebin.com/raw/9RNuQZS5
WP Admin:http://pastebin.com/raw/8vVnDTRx
- examplewebsite.com - Zmienne SQL
Site URL (Home):https://www.examplewebsite.com
Wordpress URL:https://www.examplewebsite.com
- examplewebsite.com - WP Config (Zastępuje SQL)
Config:
define('FORCE_SSL_ADMIN', true);
define('FORCE_SSL_LOGIN', true);
define('WP_HOME','https://examplewebsite.com');
define('WP_SITEURL','https://examplewebsite.com');
define('DOMAIN_CURRENT_SITE', 'examplewebsite.com');
define('COOKIE_DOMAIN', 'examplewebsite.com');
define('ADMIN_COOKIE_PATH', '/wp-admin/');
- test.examplewebsite.com i moretests.examplewebsite.com
subdomeny są konfiguracji jak poniżej, jednak wp-config nie jest stosowana w tej chwili, ponieważ wymuszony https powoduje: wydanie 4.
Pliki .htaccess są w 99% identyczne do tych na głównej domenie/miejscu z jednym wyjątkiem, że nie ma kodu zwyczaj WP przepisać pętli zasady (przekierowanie z www na bez przedrostka www i przekierowanie http na https)
- test.examplewebsite. com i moretests.examplewebsite.com - Zmienne SQL
Site URL (Home):http://test.examplewebsite.com
Wordpress URL:http://test.examplewebsite.com
- test.examplestrona internetowa i dodatkowe testy.examplestrona.com - WP Config (Zastępuje SQL)
Config:
define('FORCE_SSL_ADMIN', true);
define('FORCE_SSL_LOGIN', true);
define('WP_HOME','https://test.examplewebsite.com');
define('WP_SITEURL','https://test.examplewebsite.com');
define('DOMAIN_CURRENT_SITE', 'test.examplewebsite.com');
define('COOKIE_DOMAIN', 'test.examplewebsite.com');
define('ADMIN_COOKIE_PATH', '/wp-admin/');
Ustawianie powyżej, powoduje ten sam problem jak zmiany SQL (numer 4)
Gdzie należy subdomeny przekierowanie jeśli nie https? Do domeny głównej lub do subdomeny za pomocą protokołu HTTPS? –
Subdomeny powinny mieć wartość https zamiast http. – Ryflex
Powiedziałeś, że wp-admin nie robi https? czy są jakieś inne reguły w twoim .htaccess, które by to zrobiły? –