Вопрос

All of my vhosts are being sunk into the first available webroot and not their assigned webroot except for my second which is just going wild.

if I try and access ipv6mailer.com I watch the hit live go ->

[error] [client 24.184.110.39] script not found or unable to stat: /home/downlowd/www/login-form.php

True, that file does 'not' exist. it should be looking in /home/ipv6mailer/www

I have 3 vhosts and two are going to /home/downlwd/www and ignoring ServerName completely.

If I comment our downlowd.com, the log output try to access ipv6mailer.com looks like ->

[Wed Aug 21 15:23:12 2013] [crit] [client 24.184.110.39] (13)Permission denied: /home/wemail1/www/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable

It's going to the 'new' default and not ServerName

# Virtual Hosts
#
# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at
# <URL:http://httpd.apache.org/docs/2.2/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual host
# configuration.

#<IfDefine DEFAULT_VHOST>
# see bug #178966 why this is in here

# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, instead of the default. See also the <VirtualHost>
# directive.
#
# Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen 12.34.56.78:80
Listen 80

# Use name-based virtual hosting.
NameVirtualHost *:80

# When virtual hosts are enabled, the main host defined in the default
# httpd.conf configuration will go away. We redefine it here so that it is
# still available.
#
# If you disable this vhost by removing -D DEFAULT_VHOST from
# /etc/conf.d/apache2, the first defined virtual host elsewhere will be
# the default.


# vim: ts=4 filetype=apache

<VirtualHost *:80>
        ServerName www.downlowd.com
        ServerAlias downlowd.com *.downlowd.com
        ServerPath /downlowd.com
        DocumentRoot /home/downlowd/www
        <Directory "/home/downlowd/www">
                Options Indexes FollowSymLinks MultiViews ExecCGI Includes
                AllowOverride All
                Order allow,deny
                Allow from all
        </Directory>
</VirtualHost>

AddHandler cgi-script .php .php4 .php3


<VirtualHost *:80>
        ServerName www.wemail1.com
        ServerAlias wemail1.com *.wemail1.com
        ServerPath /wemail1.com
        DocumentRoot /home/wemail1/www
        <Directory "/home/wemail1/www">
                Options Indexes FollowSymLinks MultiViews ExecCGI Includes
                AllowOverride All
                Order allow,deny
                Allow from all
        </Directory>
</VirtualHost>

<VirtualHost *:80>
        ServerName www.ipv6mailer.com
        ServerAlias ipv6mailer *.ipv6mailer.com
        ServerPath /ipv6mailer
        DocumentRoot /home/ipv6mailer/www
        <Directory "/home/ipv6mailer/www">
                Options Indexes FollowSymLinks MultiViews ExecCGI Includes
                AllowOverride All
                Order allow,deny
                Allow from all
        </Directory>
</VirtualHost>



dev-box-201 www # /usr/sbin/apache2 -S
apache2: Could not reliably determine the server's fully qualified domain name, using dev-box-201.nyctelecomm.com for ServerName
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80                   is a NameVirtualHost
         default server www.downlowd.com (/etc/apache2/vhosts.d/00_default_vhost.conf:42)
         port 80 namevhost www.downlowd.com (/etc/apache2/vhosts.d/00_default_vhost.conf:42)
         port 80 namevhost www.wemail1.com (/etc/apache2/vhosts.d/00_default_vhost.conf:58)
         port 80 namevhost www.ipv6mailer.com (/etc/apache2/vhosts.d/00_default_vhost.conf:71)
Syntax OK
Это было полезно?

Решение

The user apache is running as (www-data?) needs search permission (+x on a dir) for every path between / and the file you're serving, if that directory has an effective value of AllowOverride != none (IOW, if Apache is configured to look for htaccess there).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top