2014-12-26 53 views
0

我試圖做一個htaccess從非WWW網址重定向到WWW網址。如何使用htaccess將非www重定向到www?

我在這個論壇中看到很多例子: Redirect non-www to www in .htaccess 但是他們沒有一個像我想要的那樣工作。

我的網址是:www.evo.co.il 並在我的網站,例如一個頁面是www.evo.co.il/בניית-אתרים 獲得在URL中的蛞蝓和重定向到的頁面(通過htaccess的)

,所以我想它會像這樣:

evo.co.il - > www.evo.co.il

evo.co.il/בניית-אתרים - > WWW。 evo.co.il/בניית-אתרים

我剛剛看到的一些例子爲根域而不是爲頁面工作,其他人用這種方式重定向內頁:

evo.co.il/בניית-אתרים - > www.evo.co.il/page.php?id= 1

我試圖那些代碼(和許多其它版本):

1.

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{HTTP_HOST} ^evo.co.il$ 
RewriteRule (.*) http://www.evo.co.il/$1 [R=301,L] 
RewriteRule ^בניית-אתרים$ /page.php?id=1 [L] 

2.

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{HTTP_HOST} ^evo.co.il 
RewriteRule (.*) http://www.evo.co.il/$1 [R=301,L] 
RewriteRule ^בניית-אתרים$ /page.php?id=1 [L] 

3.

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{HTTP_HOST} !^evo.co.il$ [NC] 
RewriteRule ^(.*)$ http://www.evo.co.il/$1 [L,R=301] 
RewriteRule ^בניית-אתרים$ /page.php?id=1 [L] 

什麼是正確的做法呢?

回答

1

爲什麼不乾脆:

RewriteEngine On 

RewriteCond %{HTTP_HOST} !www\.evo\.co\.il$ [NC] 
RewriteRule ^(.*)$ http://www.evo.co.il/$1 [L,R=301] 

RewriteRule ^בניית-אתרים$ /page.php?id=1 [L]