Мод переписать виртуальный хост и Zend - PullRequest
0 голосов
/ 20 ноября 2011

Моя конфигурация Apache:

DocumentRoot /var/www
<VirtualHost *:80>
    Alias /T "/var/www/Test"
    <Directory /var/www/Test>   
        Options Indexes FollowSymLinks MultiViews
        #AllowOverride ALL
        Order allow,deny
        Allow from all
    </Directory>    
    ErrorLog ${APACHE_LOG_DIR}/error.log
    LogLevel debug
    CustomLog ${APACHE_LOG_DIR}/access.log combined 
</VirtualHost>

<VirtualHost *:80>
    SetEnv APPLICATION_ENV "development"
    Alias /N "/var/www/NCAA/public"
    <Directory /var/www/NCAA/public>        
        Options Indexes FollowSymLinks MultiViews
        AllowOverride ALL
        Order allow,deny
        Allow from all
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/error.log
    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel debug
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Мой файл .htacess в /var/www/NCAA/public:

RewriteEngine On
RewriteBase   /N/
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

Я могу перейти к файлам в localhost / T, но я получаю 404 для / localhost / N Я получаю это в своем журнале apache:

[Sun Nov 20 16:32:37 2011] [error] [client 127.0.0.1] File does not exist: /var/www/N,

так что я не уверен, что я делаю неправильно. Я хочу, чтобы 1 домен был обычным доменом с псевдонимом, а другой - приложением Zend с измененным модом для index.php

Спасибо

1 Ответ

0 голосов
/ 21 ноября 2011

Вам действительно нужно, чтобы приложение NCAA было доступно под http://localhost/N?Допустим ли доступ к нему по другому URL-адресу, например http://local.ncaa/?

Если это так, запись виртуального хоста может выглядеть следующим образом:

<VirtualHost *:80>
    DocumentRoot /var/www/NCAA/public
    ServerName local.ncaa
    SetEnv APPLICATION_ENV development
    <Directory /var/www/NCAA/public>        
        Options Indexes FollowSymLinks MultiViews
        AllowOverride ALL
        Order allow,deny
        Allow from all
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/error.log
    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel debug
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Тогда стандарт ZF .htaccessможно использовать (база перезаписи не требуется):

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
...