Ruby on Rails и стандартный mod_rewrite - PullRequest
0 голосов
/ 08 апреля 2011

У меня есть старое приложение, написанное на PHP, и теперь я заменяю его новым приложением RoR.В старом приложении есть ссылки типа «this-is-seo-title, n123.html».В htaccess есть правило, которое переводит эти ссылки в news.php? Id = 123.

Теперь, когда я настраиваю приложение RoR, ссылки находятся в «пути RoR» (: controller /: action /: id),Это круто и приятно, но в Google у меня есть около 50 тысяч проиндексированных подстраниц.Я не хочу разбивать эти проиндексированные подстраницы, поэтому теперь возникает вопрос:

Могу ли я создать новые правила в файле htaccess, которые будут переводить ссылки "this-is-seo-title, n123.html" на/ news / 123?

Я еще не развернул приложение, и у меня нет доступа к среде с пассажирским модулем, поэтому я сам не могу его протестировать.

1 Ответ

0 голосов
/ 08 апреля 2011

Я не думаю, что необходимо использовать htaccess. Если вы едете по рельсам, то делайте это с помощниками по рельсам. Я думаю, что это должно работать в ваших маршрутах.rb:

match 'this-is-seo-title,n:id.html' => 'news#show'

Этот маршрут вызовет NewsController и действие show с 123 в качестве параметра: id. Это то, что вы искали?

Edit:

для рельсов 2

map.connect 'this-is-seo-title,n:id.html', :controller => 'news', :action => 'show'

По крайней мере, я думаю, что это будет работать в Rails 2. У меня нет настроенной среды и запущен atm для тестирования. Дайте мне знать, если это не сработает.

...