2009-04-17 1 views
0

Я хочу перенаправить http://www.example.com в http://example.com через .htaccess. Я нашел и попробовал приведенные ниже коды, но ничего не работает. может ли любой орган сказать мне решение.www to non-www redirection .htaccess код не укусить на моем сайте?

Я получаю эту ошибку Socket Error 10049 всех кодов, когда я типа http://www.example.com

Мой хостинг-Apache версии 2.0.63. Мой .htaccess файл в public_html/

Options +Followsymlinks 
RewriteEngine on 
RewriteBase/
RewriteCond %{HTTP_HOST} . 
RewriteCond %{HTTP_HOST} ^www\.example\.com 
RewriteRule (.*) http://example.com/$1 [R=301,L,QSA] 


RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www\.example\.com 
RewriteRule (.*) http://example.com/$1 [R=301,L] 


RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www.example.com 
RewriteRule (.*) http://example.com/ [R=301,L] 

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC] 
RewriteRule (.*) http://example.com/$1 [R=301,L] 

RewriteEngine On 
RewriteCond %{HTTP_HOST} . 
RewriteCond %{HTTP_HOST} !^example\.com 
RewriteRule (.*) http://example.com/$1 [R=301,L] 

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www\. [NC] 
RewriteRule ^(.*)$ %{HTTP_HOST}$1 [C] 
RewriteRule ^www\.(.*)$ http://$1 [L,R=301] 
+0

Проблема в том, что вы используете Windows. Серьезно, правда, вы уверены, что .htaccess вызывает проблему? И вы НАСТОЯТЕЛЬНО используете www.example.com? Если это так, выберите другое имя хоста. – Artelius

+0

no Я использую хостинг Linux. –

ответ

3

Я получаю эту ошибку Ошибка сокета 10049 на всех кодов

Я не» Думаю, это вызвано переадресацией на WWW. Обычно это то, что вы получаете, когда пытаетесь «Слушать» по IP-адресу, который у сервера отсутствует. (Часто, когда вы копируете httpd.conf с одного сервера на другой.)

Кстати, если у вас есть доступ к httpd.conf, проще и быстрее сделать перенаправление для одного сайта, используя 'well' ».

<VirtualHost *:80> 
    ServerName example.com 
    ...real settings... 
</VirtualHost> 
<VirtualHost *:80> 
    ServerName www.example.com 
    Redirect permanent/http://example.com/ 
</VirtualHost> 
+0

++, и вы также можете сделать RedirectMatch постоянным ^/(. *) http://example.com/$1, чтобы в целом улучшить работу пользователя, а также не нарушать какие-либо входящие ссылки. – cherouvim

+0

Версия «Перенаправление» уже делает это: трейлинг-части URL автоматически добавляются к целевому URL-адресу. – bobince

0

http://no-www.org/

попробовать

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 
RewriteRule ^(.*)$ http://%1/$1 [R=301,L] 
+0

это не работает, я тоже пробовал это http://stackoverflow.com/questions/234723/generic-htaccess-redirect-www-to-non-www –