2016-08-08 9 views
0

Ich habe zwei Websites - Ich habe Htaccess-Datei für beide von ihnen gemacht (jeder hat verschiedene Links natürlich). Sie sind gleich. Mein Ziel ist es, von nicht www auf www umzuleiten. Jetzt funktioniert es für die erste Website. Für den zweiten funktioniert es auch, aber nur auf/index, der Rest der Seiten wird nicht umgeleitet. Irgendeine Idee, was das Problem sein könnte? Ich glaube, es gibt keinen Fehler in Htaccess, als ich es überprüft habe und sie sollten völlig gleich sein.Umleitung von nicht www auf www

Dateien - es funktioniert für AAA, nicht für BBB. Htaccess Code unten:

AAA SITE: 



RewriteEngine On 
RewriteCond %{REQUEST_URI} !^domains/ 
RewriteCond %{REQUEST_URI} !^/domains/ 
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$ 
RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d 
RewriteRule (.*) domains/%2/$1 [DPI] 


RewriteCond %{REQUEST_URI} !^subdom/ 
RewriteCond %{REQUEST_URI} !^/subdom/ 
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)\.([^\.]*)\.([^\.]*)$ 
RewriteCond %{DOCUMENT_ROOT}/subdom/%2 -d 
RewriteRule (.*) subdom/%2/$1 [DPI] 

DirectoryIndex index.html 


RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^domains/[^/]+/(.+[^/])$ /$1/ [R] 


RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^subdom/[^/]+/(.+[^/])$ /$1/ [R] 

RewriteRule ^([^\.]+)$ $1.html [NC,L] 


RewriteEngine On 
RewriteBase/

## hide .html extension 
# To externally redirect /dir/foo.html to /dir/foo 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.html [NC] 
RewriteRule^%1 [R,L,NC] 

## To internally redirect /dir/foo to /dir/foo.html 
RewriteCond %{REQUEST_FILENAME}.html -f 
RewriteRule^%{REQUEST_URI}.html [L] 
RewriteCond %{REQUEST_FILENAME} !-f 

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^aaa\.net 
RewriteRule (.*) https://www.aaa.net/$1 [R=301,QSA,L] 

RewriteEngine On 
RewriteCond %{HTTPS} !on 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 

ErrorDocument 404 https://www.aaa.net/404page 

<IfModule mod_expires.c> 
ExpiresActive On 
ExpiresDefault A600 
ExpiresByType text/javascript A604800 
ExpiresByType application/javascript A604800 
ExpiresByType text/css A604800 
ExpiresByType image/gif A604800 
ExpiresByType image/png A604800 
ExpiresByType image/jpeg A604800 
ExpiresByType image/x-icon A604800 
ExpiresByType text/html A60 
</IfModule> 

<ifModule mod_gzip.c> 
mod_gzip_on Yes 
mod_gzip_dechunk Yes 
mod_gzip_item_include file .(html?|txt|css|js|php|pl)$ 
mod_gzip_item_include handler ^cgi-script$ 
mod_gzip_item_include mime ^text/.* 
mod_gzip_item_include mime ^application/x-javascript.* 
mod_gzip_item_exclude mime ^image/.* 
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* 
</ifModule> 




BBB SITE: 
RewriteEngine On 
RewriteCond %{REQUEST_URI} !^domains/ 
RewriteCond %{REQUEST_URI} !^/domains/ 
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$ 
RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d 
RewriteRule (.*) domains/%2/$1 [DPI] 


RewriteCond %{REQUEST_URI} !^subdom/ 
RewriteCond %{REQUEST_URI} !^/subdom/ 
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)\.([^\.]*)\.([^\.]*)$ 
RewriteCond %{DOCUMENT_ROOT}/subdom/%2 -d 
RewriteRule (.*) subdom/%2/$1 [DPI] 

DirectoryIndex index.html 


RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^domains/[^/]+/(.+[^/])$ /$1/ [R] 


RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^subdom/[^/]+/(.+[^/])$ /$1/ [R] 

RewriteRule ^([^\.]+)$ $1.html [NC,L] 

# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

## hide .html extension 
# To externally redirect /dir/foo.html to /dir/foo 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.html [NC] 
RewriteRule^%1 [R,L,NC] 

## To internally redirect /dir/foo to /dir/foo.html 
RewriteCond %{REQUEST_FILENAME}.html -f 
RewriteRule^%{REQUEST_URI}.html [L] 
RewriteCond %{REQUEST_FILENAME} !-f 


RewriteEngine on 
RewriteCond %{HTTP_HOST} ^bbb\.net 
RewriteRule (.*) https://www.bbb.net/$1 [R=301,QSA,L] 


RewriteEngine On 
RewriteCond %{HTTPS} !on 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 

ErrorDocument 404 https://www.bbb.net/404page 

<IfModule mod_expires.c> 
ExpiresActive On 
ExpiresDefault A600 
ExpiresByType text/javascript A604800 
ExpiresByType application/javascript A604800 
ExpiresByType text/css A604800 
ExpiresByType image/gif A604800 
ExpiresByType image/png A604800 
ExpiresByType image/jpeg A604800 
ExpiresByType image/x-icon A604800 
ExpiresByType text/html A60 
</IfModule> 

<ifModule mod_gzip.c> 
mod_gzip_on Yes 
mod_gzip_dechunk Yes 
mod_gzip_item_include file .(html?|txt|css|js|php|pl)$ 
mod_gzip_item_include handler ^cgi-script$ 
mod_gzip_item_include mime ^text/.* 
mod_gzip_item_include mime ^application/x-javascript.* 
mod_gzip_item_exclude mime ^image/.* 
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* 
</ifModule> 
+0

Was meinen Sie es Sie nicht lassen? Fügen Sie den Code in einen Codeblock –

+0

mindestens einige Zeilen von htaccess bezogen damit ein. Der erste funktioniert AAA, der zweite BBB nicht RewriteEngine On RewriteCond% {HTTP_HOST}^aaa \ .net RewriteRule (. *) Https://www.aaa.net/$1 [R = 301, QSA, L] RewriteEngine on RewriteCond% {} HTTPS auf RewriteRule (. *) https: //% {HTTP_HOST}% {} REQUEST_URI RewriteEngine auf RewriteCond% {HTTP_HOST}^bbb \ .net (. *) RewriteRule https://www.bbb.net/$1 [R = 301, QSA, L] RewriteEngine on RewriteCond% {HTTPS} auf RewriteRule https! (. *): //% { HTTP_HOST}% {REQUEST_URI} –

+0

es sagt, ich habe keinen Ruf, mehr als 2 Links zu senden –

Antwort

0

Für beide Standorte (AAA & BBB), verwenden Sie die folgenden Schritte aus:

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^(?!www\.) [NC] 
RewriteRule^http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 

Das heißt übersetzt:

+0

Ich habe versucht, aber ich bin mir nicht sicher, ob dies das Finale ist Code, den ich einfügen sollte? Sollte ich irgendwie AAA oder BBB hinzufügen? Was soll ich damit ersetzen? Grundsätzlich, was auch immer ich versuchte, es sagte, die Seite kann nicht geladen werden, weil zu viele Weiterleitungen. –

+0

Entschuldigung. Der von mir ursprünglich beschriebene Umschreibungszustand war zu groß. Ich habe es geändert. Es sollte jetzt funktionieren, also teste es bitte noch einmal. – Rounin

Verwandte Themen