Hi,

I have one server and one IP address. I use Ubuntu 10.04 with Apache
and Web2py.
I have the default installation working.

I have the following domain names:

castle.example.com
www.demonstration.com

So here is my problem... I want to use Apache and Virtual Hosts for
multiple domains. I want to map the "myapp2" to www.demonstration.com.
It does work but it seems the user controller gets an error [invalid
controller (user/index) ]

Here are my vhosts:

################################################
################################################
#      castle.example.com
################################################
################################################

<VirtualHost *:80>
  ServerName castle.example.com
  WSGIDaemonProcess web2py user=www-data group=www-data
  WSGIProcessGroup web2py
  WSGIScriptAlias / /home/www-data/web2py/wsgihandler.py

  <Directory /home/www-data/web2py>
    AllowOverride None
    Order Allow,Deny
    Deny from all
    <Files wsgihandler.py>
      Allow from all
    </Files>
  </Directory>

  AliasMatch ^/([^/]+)/static/(.*) \
           /home/www-data/web2py/applications/$1/static/$2
  <Directory /home/www-data/web2py/applications/*/static/>
    Options -Indexes
    Order Allow,Deny
    Allow from all
  </Directory>

  <Location /admin>
  Deny from all
  </Location>

  <LocationMatch ^/([^/]+)/appadmin>
  Deny from all
  </LocationMatch>

  CustomLog /var/log/apache2/access.log common
  ErrorLog /var/log/apache2/error.log
</VirtualHost>

<VirtualHost *:443>
  ServerName rhegium.elitism.net
  SSLEngine on
  SSLCertificateFile /etc/apache2/ssl/self_signed.cert
  SSLCertificateKeyFile /etc/apache2/ssl/self_signed.key

  WSGIProcessGroup web2py

  WSGIScriptAlias / /home/www-data/web2py/wsgihandler.py

  <Directory /home/www-data/web2py>
    AllowOverride None
    Order Allow,Deny
    Deny from all
    <Files wsgihandler.py>
      Allow from all
    </Files>
  </Directory>

  AliasMatch ^/([^/]+)/static/(.*) \
        /home/www-data/web2py/applications/$1/static/$2

  <Directory /home/www-data/web2py/applications/*/static/>
    Options -Indexes
    ExpiresActive On
    ExpiresDefault "access plus 1 hour"
    Order Allow,Deny
    Allow from all
  </Directory>

  CustomLog /var/log/apache2/access.log common
  ErrorLog /var/log/apache2/error.log
</VirtualHost>




################################################
################################################
#      www.demonstration.com
################################################
################################################

<VirtualHost *:80>
  ServerName demonstration.com
  ServerAlias www.demonstration.com
  WSGIScriptAlias / /home/www-data/web2py/wsgihandler.py/myapp2

  <Directory /home/www-data/web2py>
    AllowOverride None
    Order Allow,Deny
    Deny from all
    <Files wsgihandler.py>
      Allow from all
    </Files>
  </Directory>

  AliasMatch ^/([^/]+)/static/(.*) \
           /home/www-data/web2py/applications/$1/static/$2
  <Directory /home/www-data/web2py/applications/*/static/>
    Options -Indexes
    Order Allow,Deny
    Allow from all
  </Directory>

  <Location /admin>
  Deny from all
  </Location>

  <LocationMatch ^/([^/]+)/appadmin>
  Deny from all
  </LocationMatch>

  CustomLog /var/log/apache2/www_demonstration_com-access.log common
  ErrorLog /var/log/apache2/www_demonstration_com-error.log
</VirtualHost>



################################################
################################################
################################################
################################################


Going to castle.example.com works perfectly.

Going to www.demonstration.com works and the default index controller
shows
"1. You visited the url /myapp2/         "

Whenever I click on a controller/view that requires auth_login I get
an invalid request error.
It takes me directly to the following:
http://www.demonstration.com/myapp2/default/user/login

If I fanangle with the url, the following works:
http://www.demonstration.com/default/user/login

Do I need to do something with my vhost file? Maybe something with
routes?
Is there an auth.settings I need to change?

my request.env.http_host did come up with "www.demonstration.com"
I think I need to override an Auth setting but I don't know if I am on
the right track.

Any help would be greatly appreciated...

Reply via email to