Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Администрирование Web серверов и Web служб > помогите в RewriteRule


Автор: Jcrnd 18.3.2008, 20:33
Сайт управляется CMS, в корне лежит .htaccess со след. содержанием:

Код

RewriteRule ^forma/([-a-zA-Z0-9_@]{1,20}).html/?$ index.php?nav=forma&error=$1 [L]
RewriteRule ^gbook/forma.html/?$ index.php?nav=gbook_forma [L]
RewriteRule ^install/?$ install [L]
RewriteRule ^docs/([-a-zA-Z0-9_@]{1,20}).html/?$ index.php?nav=doc&name=$1 [L]
RewriteRule ^([-a-zA-Z0-9_@]{1,20})/ID_([0-9]{1,20}).html/?$ index.php?nav=$1&id=$2 [L]
RewriteRule ^([-a-zA-Z0-9_@]{1,20})/P([0-9]{1,20}).html/?$ index.php?nav=$1&p=$2 [L]
RewriteRule ^([-a-zA-Z0-9_@]{1,20})/([-a-zA-Z0-9_@]{1,9}).html/?$ index.php?nav=$1&name=$2 [L]
RewriteRule ^([-a-zA-Z0-9_@]{1,20})/?$ index.php?nav=$1


Появилась необходимость добавить на сайт поддомен, но из-за последней записи (RewriteRule ^([-a-zA-Z0-9_@]{1,20})/?$ index.php?nav=$1) поддомен не открывается. Ни так http://pod.domen.ru, ни так http://domen.ru/pod/ - появляется страница с закомментированной строкой "Use compress gzip" в исходнике.

Пробовал убрать эту строку из хтаксесс, но в этом случае не работают ссылки из CMS вида http://domen.ru/gbook/, http://domen.ru/links/...

Как поступить, чтобы и поддомен работал, и ссылки в CMS обробатывались?  smile 


Автор: Canarat 18.3.2008, 20:42
Jcrnd, 
Использовать RewriteBase?

Добавлено через 4 минуты
+
Можно(нужно) воспользоваться RewriteCond %{REQUEST_FILENAME} !-d

Автор: Jcrnd 18.3.2008, 21:13
Цитата(Canarat @  18.3.2008,  20:42 Найти цитируемый пост)
Jcrnd, Использовать RewriteBase?Добавлено через 4 минуты+Можно(нужно) воспользоваться RewriteCond %{REQUEST_FILENAME} !-d


Я бы с радостью, но к сожалению ни в ПХП ни в командах апача, (это же они?  smile ) не силен. Был бы признателен, если бы кто-нибудь переделал, как нужно.  smile 

Автор: Canarat 18.3.2008, 21:22
Jcrnd, 
Код

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^forma/([-a-zA-Z0-9_@]{1,20}).html/?$ index.php?nav=forma&error=$1 [L]
RewriteRule ^gbook/forma.html/?$ index.php?nav=gbook_forma [L]
RewriteRule ^install/?$ install [L]
RewriteRule ^docs/([-a-zA-Z0-9_@]{1,20}).html/?$ index.php?nav=doc&name=$1 [L]
RewriteRule ^([-a-zA-Z0-9_@]{1,20})/ID_([0-9]{1,20}).html/?$ index.php?nav=$1&id=$2 [L]
RewriteRule ^([-a-zA-Z0-9_@]{1,20})/P([0-9]{1,20}).html/?$ index.php?nav=$1&p=$2 [L]
RewriteRule ^([-a-zA-Z0-9_@]{1,20})/([-a-zA-Z0-9_@]{1,9}).html/?$ index.php?nav=$1&name=$2 [L]
RewriteRule ^([-a-zA-Z0-9_@]{1,20})/?$ index.php?nav=$1


Попробуй так.

Автор: Jcrnd 18.3.2008, 21:28
Canarat, Спасибо! Теперь работает  smile !

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)