развертывание приложения zend framework в mediatemple GS

#zend-framework #web-applications

#zend-framework #веб-приложения

Вопрос:

у меня возникли проблемы с развертыванием моего приложения zend Framework на хостинге mediatemple GS.

Я загрузил папку своего приложения в ~/domains и переименовал ее в mysite.net папку. Внутри него я создал символическую ссылку, html которая указывает на public каталог в папке приложения zend framework. Но приложение пока не работает. Как правило, mediatemple указывает путь host к ~/domains/host/html , на который mysite.net должен указывать мой домен ~/domains/mysite.net/html . Я делаю что-то неправильно или в этом есть что-то еще? Я получаю ошибку 403 при попытке доступа mysite.net


Обновление: Следующие правила перезаписи делают базовый URL http://mysite.net загружается, но контроллеры сейчас не работают. доступ http://mysite.net/controller отправляет сообщение об ошибке «страница не найдена»: S

 SetEnv APPLICATION_ENV development

RewriteEngine On
RewriteRule ^.htaccess$ - [F]
RewriteCond %{REQUEST_URI} =""
RewriteRule ^.*$ /public/index.php [NC,L]
RewriteCond %{REQUEST_URI} !^/public/.*$
RewriteRule ^(.*)$ /public/$1
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.*$ - [NC,L]
RewriteRule ^public/.*$ /public/index.php [NC,L]
  

Обновление: теперь это решено. Хитрость заключается в том, чтобы добавить вышеуказанный .htaccess файл в корневую папку приложения, а также сохранить оригинал .htaccess в общедоступном каталоге. Вместе они творят чудеса.

Комментарии:

1. найдено исправление здесь ttech.it/en/article/2010/03 /…

Ответ №1:

Я сам нашел решение:

создайте .htaccess файл в корневой папке приложения:

 SetEnv APPLICATION_ENV development

RewriteEngine On
RewriteRule ^.htaccess$ - [F]
RewriteCond %{REQUEST_URI} =""
RewriteRule ^.*$ /public/index.php [NC,L]
RewriteCond %{REQUEST_URI} !^/public/.*$
RewriteRule ^(.*)$ /public/$1
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.*$ - [NC,L]
RewriteRule ^public/.*$ /public/index.php [NC,L]
  

Также сохраните оригинал .htaccess в /public папке. Сначала я удалил это, что ухудшило ситуацию.