2014-02-20 3 views
3

Я использую этот .htaccess:RewriteCond: не может составить регулярное выражение

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

Я получаю сообщение об ошибке в браузере:

Внутренняя ошибка сервера

Сервер обнаружил внутреннюю ошибку или неправильная конфигурация, и был не в состоянии выполнить запрос.

Обратитесь к администратору сервера, [email protected] и , чтобы сообщить им о времени возникновения ошибки, и все, что вы могли бы сделать , могло привести к ошибке.

Дополнительная информация об этой ошибке может быть доступна на сервере error log.

The /var/log/apache2/error.log говорит:

RewriteCond: cannot compile regular expression '*!^www*.kerala\\.local' 

ответ

2

Ваше регулярное выражение действительно неправильно. (Есть бродячие звездочки)

Используйте этот код вместо:

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

Он работает,. Можете ли вы предоставить общее решение независимо от имени домена – SCC

+0

, проверьте обновленный код. – anubhava

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