Настройка zf2 в ubuntu 13.10 с виртуальным хостом Apache

Я настраиваю приложение Zend (ZF2) в ubuntu 13.10. Следуя инструкциям ниже:

  1. Поместите код в /var/www/ с именем zfapp

Конфигурация виртуального хоста:

 <VirtualHost *:80> 
  ServerName zfapp.com DocumentRoot /var/www/zfapp/ 

  <Directory /> 
    Options FollowSymLinks 
    AllowOverride All 
  </Directory> 

  ErrorLog /var/log/apache2/error.log 

   # Possible values include: debug, info, notice, warn, error, crit, 
   # alert, emerg. 
   LogLevel warn 
   CustomLog /var/log/apache2/access.log combined 

</VirtualHost>
  1. Создание для него виртуального хоста в /etc/hosts

    127.0.0.1 zfapp.com

  2. Добавить файл в /etc/apache2/sites-available/zfapp.cof

  3. sudo a2enmod rewrite

  4. sudo a2ensite zfapp.conf

  5. sudo service apache2 restart

Однако когда я захожу на сайт (zfapp.com/api/user/auth); Это дает следующую ошибку:

Не найден. Запрошенный URL /api/user/auth не найден на этом сервере.

У меня есть проект javascript MVC, в котором я использую PHP в качестве языка на стороне сервера.

Вот структура каталогов проекта:

Папка ProjectDir javascriptMVC-> папка api jsfiles моделей / контроллеров -> проект Zend

Я создал символическую ссылку api, которая указывает на api/public внутри каталога javascriptMVC, который я использую в вызовах AJAX к серверу PHP. как /api/user/auth. Та же структура работает на старой машине Ubuntu.

Я думаю, это как-то связано с конфигурацией Apache; или, может быть, я должен установить какой-нибудь псевдоним?


person Abdul Rauf    schedule 20.02.2014    source источник
comment
Вы можете ударить только zfapp.com?   -  person Bilal    schedule 20.02.2014
comment
Покажите конфигурацию ваших маршрутов.   -  person Bilal    schedule 20.02.2014
comment
маршруты? вы имеете ввиду etc / hosts?   -  person Abdul Rauf    schedule 20.02.2014
comment
у меня есть файл zfapp.conf в /etc/apache2/sites-available/zfapp.conf ‹VirtualHost *: 80› ServerName zfapp.com DocumentRoot / var / www / zfapp / ‹Directory /› Параметры FollowSymLinks AllowOverride All ‹/Directory› ErrorLog /var/log/apache2/error.log # Возможные значения: отладка, информация, уведомление, предупреждение, ошибка, критика, # предупреждение, возникновение. LogLevel предупреждает CustomLog /var/log/apache2/access.log вместе ‹/VirtualHost›   -  person Abdul Rauf    schedule 20.02.2014


Ответы (3)


Спасибо всем,

Я нашел проблему.

В apache 2.4.6 и ubuntu 13.10 нам нужно обновить изменение apache2.conf в

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

с участием

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

и создайте файл виртуального хоста примерно так:

<VirtualHost zfapp.com:80>
    ServerName zfapp.com

    DocumentRoot /var/www/zfapp/index

    <Directory /var/www/zfapp/index>
                Options Indexes FollowSymLinks
                AllowOverride All
                Require all granted
        </Directory>

    ErrorLog /var/log/apache2/error.log
    CustomLog /var/log/apache2/access.log combined
</VirtualHost>

Я нашел решение: https://askubuntu.com/questions/423514/how-to-enable-mod-rewrite-for-virtual-host

кстати, спасибо @Bilal, @jmleroux

person Abdul Rauf    schedule 20.02.2014
comment
Если у вас все еще есть ошибка 500 с этой конфигурацией, как и у меня, попробуйте включить перезапись модуля: sudo a2enmod rewrite - person Piotr Uchman; 16.08.2014

Без кода сложно диагностировать ...

Возможно проблема с переписыванием url:

Вы включали mod_rewrite?

Вы установили AllowOverride All?

person jmleroux    schedule 20.02.2014
comment
ДА, его можно использовать с помощью (sudo a2enmod rewrite) - person Abdul Rauf; 20.02.2014
comment
Может быть, это новый Apache: 13.10 поставляется с apache 2.4. Вам нужно Require all granted - person jmleroux; 20.02.2014
comment
Без кода трудно диагностировать. Тогда не надо; Это не ответ; а скорее два вопроса, которые должны быть комментариями. - person AlexP; 20.02.2014

@Bilal, вероятно, означает вашу конфигурацию маршрутизации ZF2: http://framework.zend.com/manual/2.0/en/modules/zend.mvc.routing.html

person Community    schedule 20.02.2014