Перемещение Zend Framework 2 из apache в nginx

Я хотел бы переместить website, который использует Zend Framework 2 от Apache до Nginx. Проблема в том, что website имеет 6 модhive, а apache обрабатывает его с помощью псевдонимов, определенных в httpd-vhosts.conf,

#httpd-vhosts.conf <VirtualHost _default_:443> ServerName localhost:443 Alias /develop/cpanel "C:/webapps/develop/mil_catele_cp/public" Alias /develop/docs/tech "C:/webapps/develop/mil_catele_tech_docs/public" Alias /develop/docs "C:/webapps/develop/mil_catele_docs/public" Alias /develop/auth "C:/webapps/develop/mil_catele_auth/public" Alias /develop "C:/webapps/develop/mil_web_dicom_viewer/public" DocumentRoot "C:/webapps/mil_catele_homepage" </VirtualHost> 

в httpd.conf DocumentRoot установлен в C: / webapps. Сайты являются avialeble, например, localhost/develop/cpanel . Framework обрабатывает дальнейшую маршрутизацию.

В Nginx я смог сделать только один website доступным, указав root C:/webapps/develop/mil_catele_tech_docs/public; в блоке serverа. Он работает только потому, что module docs не зависит от auth, как и другие, а website – от localhost/ .

В следующей попытке:

 root C:/webapps; location /develop/auth { root C:/webapps/develop/mil_catele_auth/public; try_files $uri $uri/ /develop/mil_catele_auth/public/index.php$is_args$args; } 

Теперь, когда я вхожу в localhost/develop/cpanel он исправляет index.php, но не может find никаких resources (css, js-fileы). У меня less идеи, почему ссылочные пути в ответах GET browswer были изменены на https://localhost/css/bootstrap.css https://localhost/develop/auth/css/bootstrap.css как это было на apache. Эта корневая директива, похоже, не работает.

Nginx обрабатывает php с помощью fastCGI

 location ~ \.(php|phtml)?$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param APPLICATION_ENV production; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } 

Я гугл весь день и не нашел ничего полезного. Может ли кто-нибудь помочь мне настроить эту конфигурацию на Apache?

Вы не должны использовать root директиву внутри блоков location .

Попробуй это:

 location /develop/auth { alias C:/webapps/develop/mil_catele_auth/public; try_files $uri $uri/ /index.php$is_args$args; } 

В этой конфигурации URL-адреса работают следующим образом:

http://example.com/develop/auth/image.png -> C:/webapps/develop/mil_catele_auth/public/image.png

Если вы используете root вместо alias , вы получите:

C:/webapps/develop/mil_catele_auth/public/develop/auth/image.png .

И затем, для некоторого несуществующего fileа / directoryа:

http://example.com/develop/auth/not-existing -> C:/webapps/develop/mil_catele_auth/public/index.php будет запущен.

Надеюсь, что это работает так, как вы хотите, чтобы он работал.

  • Автозагрузчик Zend не работает из конфигурации PHP
  • htaccess не работает
  • Zend 1 на Ubuntu с MSSQL не работает
  • Ionics Rewrite Настройка filterа в IIS 5.1
  • Рекомендации по отладке Apache с ошибками сегментации PHP
  • PHP фатальная ошибка Zend при загрузке websiteа на website
  • Установка и настройка Zend Framework 2 по всему serverу и тестовое вождение ZendSkeletonApplication
  • Как заставить Zend 2 и Nginx работать?
  • Прокси Nginx не передает URL-адрес в структуре controllerа / действия для Apache2
  • Перенос приложения zend на веб-server IIS 8.5 с уже установленным PHP 7.0.1
  • проблема с возможностью перезаписи apache mod на xampp
  • Interesting Posts

    Ошибка searchа Postfix: работает с localhost, а не на других узлах в локальной сети

    Как запланировать запуск задачи, которая повторяется

    Какая информация может быть связана с USB-устройством, для которого у меня less драйверов?

    Есть ли способ сообщить TTL о DNS-записях с корневым DNS-serverом?

    Попытка восстановить базу данных MySQL с разбившегося serverа, и я продолжаю получать «mysqldump не может выполнить» show create table не существует (1146) »

    Попытка get доступ к OWA через http: // имя_serverа / переадресация на https://webmail.domain.com/owa… Где это настроено?

    Arch cryptsetup зависает на 'wait for zero'

    Как создать контейнер Docker конкретной версии CentOS major.minor с помощью YUM?

    Отсутствует опция GSSAPITrustDns в OpenSSH-6.7

    ServerName с IPv6 с Apache

    Установка раздела UFS Solaris на Debian (с kernelм FreeBSD)

    Buffalo Linkstation (NAS) Приconnection к Active Directory

    Как настроить переадресацию IP-адресов на Nexenta (Solaris)?

    Логротация не работает для nginx

    Как вы можете перераспределить пространство из одной группы томов в другую группу томов в Linux?

    Давайте будем гением компьютера.