2013-03-27 2 views
-1

Я пытаюсь получить действительно простое правило mod_rewrite для работы на моем сайте.Простой mod_rewrite не работает/удаляется "www."?

До сих пор мой .htaccess файл выглядит следующим образом:

<IfModule mod_rewrite.c> 
    Options +FollowSymlinks 
    RewriteEngine On 
    RewriteRule ^http://mywebpage.com/study$ http://mywebpage.com/jobs.html [L] 
</IfModule> 

Я хочу сделать http://mywebpage.com/jobs.html доступной в http://mywebpage.com/study. Я уже убедился, что файл .htaccess не игнорируется - все в порядке, если я вхожу в мусор в файл, веб-страница выходит из строя. Так почему же это не работает?


Кроме того, я планирую использовать следующий фрагмент из HTML5 Шаблонный:

# Rewrite "www.example.com -> example.com". 

<IfModule mod_rewrite.c> 
    RewriteCond %{HTTPS} !=on 
    RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 
    RewriteRule^http://%1%{REQUEST_URI} [R=301,L] 
</IfModule> 

Так что я думаю, было бы целесообразно, чтобы этот фрагмент до того моего исследования правила перезаписи? Есть ли проблемы, которые я мог бы получить, используя приведенный выше фрагмент вместе с моими правилами перезаписи?

+1

Параметр 'HOST' не доступен в правиле, так уронить' Http: // mywebpaghe. com/'часть. – Wrikken

ответ

2

Вы не должны вводить полный URL в RewriteRule регулярное выражение, попробуйте этот кусок кода:

<IfModule mod_rewrite.c> 
    Options +FollowSymlinks 
    RewriteEngine On 
    RewriteBase/

    RewriteCond %{HTTPS} !=on 
    RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 
    RewriteRule^http://%1%{REQUEST_URI} [R=301,L] 

    RewriteRule ^study$ jobs.html [L] 
</IfModule> 
+0

Большое спасибо! – Sven

Смежные вопросы