Skip to content
This repository has been archived by the owner on Jun 6, 2018. It is now read-only.

URL routing fails under apache alias #722

Closed
ghost opened this issue Feb 17, 2017 · 3 comments
Closed

URL routing fails under apache alias #722

ghost opened this issue Feb 17, 2017 · 3 comments

Comments

@ghost
Copy link

ghost commented Feb 17, 2017

Hello,

I just upgraded my allianceauth (it was a very old version).
I followed so the steps of #547 and it worked pretty good.
Then I followed the steps of the v1.15. Again it worked well. (And yes, due to my old version I prefered to cut it in 2 ways, I don't really know if I needed it or not but anyway it worked).

My new upgrade is broken with the url path.
I'm using a subfolder in my /var/www/ because i'm running several things.

So when I go to www.mydomain.com/subfolder then my allianceauth shows me its index page.
When I go to www.mydomain.com/subfolder/login_user, it works perfectly too and let me able to enter my user and password.

And then, drama. Nothing works except a "Url not found".

Allianceauth shows nothing in its logs.

[17/Feb/2017 13:23:00] INFO [authentication.views:30] Successful login attempt from user myuser
[17/Feb/2017 14:00:00] INFO [services.managers.eve_api_manager:155] Verified API server is online and reachable.

Apache shows this:

[Fri Feb 17 14:56:23.254330 2017] [wsgi:error] [pid 28997] [17/Feb/2017 14:56:23] DEBUG [authentication.views:89] index_view called by user myuser
[Fri Feb 17 14:56:32.084504 2017] [wsgi:error] [pid 28997] [17/Feb/2017 14:56:32] DEBUG [authentication.views:21] login_user called by user myuser
[Fri Feb 17 14:56:32.088887 2017] [wsgi:error] [pid 28997] [17/Feb/2017 14:56:32] DEBUG [authentication.views:44] Providing new login form.
[Fri Feb 17 15:02:59.543795 2017] [wsgi:error] [pid 28997] [17/Feb/2017 15:02:59] DEBUG [authentication.views:89] index_view called by user myuser
[Fri Feb 17 15:03:09.620182 2017] [wsgi:error] [pid 28997] [17/Feb/2017 15:03:09] DEBUG [eveonline.views:103] dashboard_view called by user myuser
[Fri Feb 17 15:03:09.629618 2017] [wsgi:error] [pid 28997] [17/Feb/2017 15:03:09] DEBUG [eveonline.managers:169] Returning api keypairs for user 12

What did I miss ? Is my wsgi half broken ?

I didn't change my apache conf because it was working very well. What should I change ?

<VirtualHost *:80>
        ServerName myservername
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www
 
        WSGIDaemonProcess allianceauth python-path=/home/allianceserver/allianceauth
        WSGIProcessGroup allianceauth
        WSGIScriptAlias /mysubfolder /home/allianceserver/allianceauth/alliance_auth/wsgi.py
 
        Alias /favicon.ico /var/www/favicon.ico
        Alias /static/ /home/allianceserver/allianceauth/static/
        Alias /templates/ /home/allianceserver/allianceauth/templates/
        Alias /forums "/var/www/forums/"
        Alias /killboard "/var/www/killboard/"

        <Directory "/var/www/">
           AllowOverride All
           Order allow,deny
    	   Allow from all
        </Directory>

	<Directory /home/allianceserver/allianceauth/static>
		Require all granted
	</Directory>

        <Directory "/var/www/forums/">
                Require all granted
        </Directory>
 
        <Directory "/var/www/killboard/">
                Require all granted
        </Directory> 


        <Directory />
                Options FollowSymLinks
                AllowOverride None
                Require all granted
        </Directory>
 
        <Directory /var/www/mysubfolder>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Require all granted
        </Directory>

 
        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Require all granted
        </Directory>


        ErrorLog ${APACHE_LOG_DIR}/error.log
 
        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn
 
        CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined
 
        Alias /doc/ "/usr/share/doc/"
        <Directory "/usr/share/doc/">
                Options Indexes MultiViews FollowSymLinks
                AllowOverride None
                Require host 127.0.0.0/255.0.0.0 ::1/128
        </Directory>
</VirtualHost>

I tried to put:

USE_I18N = False
Because on the old version it resolved some issues (the /en/ was auto put before /mysubfolder) et I didn't need to use it.

And am I missing so other usefull logs ?
And when I'm running my server in test mode (IP:8000): everything works very well.

@ghost ghost closed this as completed Feb 17, 2017
@ghost
Copy link
Author

ghost commented Feb 17, 2017

It has been move to subdomain.domain.com and it finally works.

@Adarnof
Copy link
Member

Adarnof commented Feb 17, 2017

It's my understanding that django should be able to handle routing under an alias like what you tried. Way-back-when this wasn't possible because of hardcoded urls present throughout the project, but I'd thought we got them all in #535.

Which URLs specifically weren't resolving? Or was it ALL translated URLs? If django can show anything other than the home page that indicates the router is at least partially working. The log entries you've included don't mention this error.

@Adarnof Adarnof changed the title Url not found URL routing fails under apache alias Feb 17, 2017
@ghost
Copy link
Author

ghost commented Feb 18, 2017

All translated URLs were broken. And it was the same thing if I desabled USE_I18N = False.

I found this: https://opensourcemissions.wordpress.com/2010/03/12/finally-a-working-django-non-root-url-with-mod_wsgi/
But seems definitly too outdated when I tried.

That's not a so bad thing, whith some subdomaines it now works very well. :)

This issue was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant