我在服务器上有两个文件夹。
/var/www/core
/var/www/instances/first
每个实例的入口点位于路径下/var/www/instances/first
。有
index.php
文件config.php
文件uploads/
文件夹
因此,服务器首先必须打开index.php
文件,然后将所有请求转发到另一个文件夹/var/www/core
。
index.php
内容
// ... some code ...
require '../../core/index.php';
据我所知,我必须使用 Alias 来实现目标。我有以下虚拟主机配置
<VirtualHost *:80>
ServerName first.com
ServerAlias www.first.com
DocumentRoot /var/www/instances/first/
Alias /uploads /var/www/instances/first/uploads/
<Directory /var/www/instances/first/>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Alias / /var/www/core/
<Directory /var/www/core/>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# Redirect from www to non-www
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
但使用此配置,我的所有 URL(包括第一个index.php
)都会转发到核文件夹。也许有人知道如何更改配置以防止“混叠”主index.php
文件。
uploads/
附言:需要文件夹的另一个别名并且它运行良好。