Маршрут подпапки Apache не работает с zf2 - PullRequest
0 голосов
/ 19 октября 2018

У меня есть одно приложение zf2 и один блог WordPress, оба являются разными каталогами.(/ var / www / zf2, / var / www / blog).Я хочу, чтобы мой маршрут example.com указывал на мое приложение zf2, а example.com/blog указывал на мой блог WordPress.Я использую функцию псевдонима Apache, и она работает только для основного маршрута.example.com/blog указывает на мой блог WordPress, но любой другой маршрут блога указывает на приложение zf2.Например, example.com/blog/aboutus указывает на мое приложение zf2 и показывает страницу ошибки zf2 not found, вместо этого она должна указывать на страницу моего блога.

<VirtualHost *:80>
     ServerName example.com
     DocumentRoot /var/www/zf2/public
     Alias /blog/ /var/www/blog/
     <Directory /var/www/blog>
        DirectoryIndex index.php
        Options Indexes MultiViews FollowSymLinks
        AllowOverride All
        Order deny,allow
        Deny from all
        #Allow from all
     </Directory>
     <Directory /var/www/zf2/public>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
     </Directory>
</VirtualHost>

Ниже приведено содержимое htaccess моего приложения zf2.

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]

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

RewriteCond %{REQUEST_URI}::$1 ^(/.+)(.+)::\2$
RewriteRule ^(.*) - [E=BASE:%1]
RewriteRule ^(.*)$ %{ENV:BASE}index.php [NC,L]

И это моя конфигурация htaccess для блога.

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
...