У меня есть два вопроса.
(должен был удалить некоторый http:// в моем URL в качестве примера, потому что у меня нет достаточной репутации все же, чтобы иметь гумус затем 1 URL в моем вопросе. таким образом, это говорит//пример.)
Вопрос 1) у меня есть один домен как http://example.com. Это приводит к странице, загруженной из/var/www/example. Теперь я хочу, чтобы все запросы к//example.com/site2 были разрешены к папке,/var/www/site2.
Это - основная идея, и я пытался выполнить это как это (который не работал).
<VirtualHost *:80>
ServerAdmin webmaster@example.com
DocumentRoot /var/www/example
DirectoryIndex /index.html index.html
#<LocationMatch "^/site2.*">
# RewriteEngine on
# RewriteRule . /example2/index.html [L]
#</LocationMatch>
AliasMatch "/site2(.*)" "/var/www/site2$1"
<Directory /var/www/site2>
Require all granted
AllowOverride all
</Directory>
# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>
Я пытался использовать директиву Псевдонима и соответствие Местоположения для перезаписи материала к корректному URL при прибытии в/site2 url. Это было моей конференцией В//example.com/site2/, она приведет к index.html от//example.com/. Только при запросе //example.com/site2/index.html.
<VirtualHost *:80>
DocumentRoot /var/www/example
DirectoryIndex /index.html index.html
Alias "/site2" "/var/www/site2"
<Directory /var/www/site2>
Require all granted
AllowOverride all
</Directory>
</VirtualHost>
Вопрос 2), Если бы 1 работа затем я хотел бы иметь весь запрос php, передал своему собственному пулу fpm. Запросы на example.com должны быть переданы fcgi://127.0.0.1:9000, и запрос на//example.com/site2 должен перейти к fcgi://127.0.0.1:9001.
[ОТРЕДАКТИРОВАННЫЙ] (Измененная ссылка для fpm fcgi.) [ОТРЕДАКТИРОВАННЫЙ] (Добавленный conf на основе директивы Псевдонима.)
Согласно "Вопросу 1)":
необходимо добавить псевдоним:
Alias /site2 /var/www/site2
<Directory /var/www/site2>
Require all granted
AllowOverride all
</Directory>
DirectoryIndex
директива читает операторы как 'абсолютные' имена файлов. Я имею в виду с этим синтаксисом:
DirectoryIndex /index.html index.html
DirectoryIndex
проверит если index.html
, расположенный в DocumentRoot
=/
, существует и отобразит его, если да, и проигнорирует следующие операторы. Таким образом, если эта запись (/index.html
) не предназначается, что это неправильно. Некоторые примеры здесь.