В настоящее время мой /etc/apache2/sites-enabled/000-default.conf выглядит так:
DocumentRoot /var/www/htm
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
Options +ExecCGI
AddHandler cgi-script .cgi .pl
Options FollowSymLinks
Require all granted
</Directory>
У меня есть несколько доменов, которые я хочу получить доступ к порту 80 на моем NAS. На моем QNAP каждый домен имеет собственную папку с названием «Домен». COM "с" .htaccess ", многочисленными" .html ", содержащими
Может ли кто-то показать мне, что мой «.000 - default.conf» должен выглядеть как для достижения моих целей? Спасибо!
Вместо того, чтобы помещать всё в один конфигурационный файл, подумайте о том, чтобы каждый из ваших доменов был в своём собственном файле .conf
. Это позволит вам указать не только то, какой CGI-бин используется.
For example:
Site | Config File |
---|---|
example.com | /etc/apache2/sites-available/000-example-com.conf |
secondary.com | /etc/apache2/sites-available/001-secondary-com.conf |
tertiary.com | /etc/apache2/sites-available/002-tertiary-com. conf |
default.com | /etc/apache2/sites-available/999-default-com.conf |
Вы можете включить (или отключить) каждый из сайтов с помощью a2ensite
, например:
sudo a2ensite 002-tertiary-com.conf`
Это позволяет сохранить все разделенным и "чистым". 999-default
- это "catch all", который Apache будет использовать, если веб-трафик идет на сервер для домена, который не определён явно. Для этого можно использовать строку ServerAlias
в файле .conf
.
При такой настройке каждый из ваших файлов .conf
может выглядеть следующим образом:
<VirtualHost *:80>
ServerAdmin your@mail.address
DocumentRoot /var/www/example/public
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
ServerName example.com
ServerAlias example.com *.example.com
DirectoryIndex index.php index.html
ErrorLog ${APACHE_LOG_DIR}/example-error.log
CustomLog ${APACHE_LOG_DIR}/example-access.log combined
</VirtualHost>
<Directory /var/www/example.com/public>
Options FollowSymLinks
AllowOverride All
Order Allow,Deny
Allow From All
</Directory>
<Directory "/usr/lib/cgi-bin">
Options +ExecCGI
AddHandler cgi-script .cgi .pl
Options FollowSymLinks
Require all granted
</Directory>
Примечание: Обязательно замените значения для сайта, как вам нужно, включая ссылки на различные местоположения cgi-bin
.
Это должно дать вам специфику (и гибкость), необходимую для того, чтобы несколько доменов использовали разные версии программного обеспечения.