Назад | Перейти на главную страницу

Доступ к Rails в / app /, а не / app / public /

Я пытаюсь развернуть Rails 2.1.2 с Apache 2.2.10 и FastCGI (да, плохой, древний, уродливый, я знаю).

К моему приложению можно получить доступ через example.com/app/public/, но я хочу получить к нему доступ через example.com/app/.

В моем .htaccess-файле (в app / -directory!) У меня есть:

RewriteEngine On
RewriteBase /app/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ public/dispatch.fcgi [QSA,L]

Как я могу пересылать каждый запрос, идущий в app/ к app/public/? Каждый раз, когда я пробую это (например, с RewriteRule ^.*$ public/$1 [QSA]) Я получаю ошибку маршрутизации:

No route matches "/app/" with {:method=>:get}

Помогите?

Что ж, ваш файл vhosts, похоже, указывает на общую папку, поскольку вы получаете ошибку маршрутизации, поэтому загружается среда rails.

Сначала попробуйте переместить ваш .htaccess в общую папку. Общая папка должна быть корнем вашего веб-сайта, например, мое приложение rails работает на www.mydomain.com/, и если я помещу файл file.html в общую папку, я могу получить доступ к www.mydomain.com/file. html.

Но если у вас есть маршрут в файле routes.rb, вы можете получить доступ по адресу www.mydomain.com/myroute.

Извините за быстрый ответ.