Great news, I believe it is finally working. For my domain, I have the root domain pointing (forwarding?) to www.domainname.com
I have a cname entry for www.domainname.com that points to username.pythonanywhere.com for routes.py I have this setup. BASE=dict( default_application='welcome', domains={'www.web2pyapp1.com':'web2pyapp1', 'www.web2pyapp2.com':'web2pyapp2'} ), ) I really appreciate everyone's help with this. Just sorry it took me so long to get my head around it. But all is well now and I get to keep using PythonAnywhere which was a goal. Thanks Again -Jim On Tue, Feb 12, 2013 at 2:55 PM, Jim Steil <ato.st...@gmail.com> wrote: > I 'think' I've just got my DNS setup they way you described. Waiting for > it to propogate.... > > Will check back in a few hours. > > -Jim > > > On Tue, Feb 12, 2013 at 1:48 PM, Giles Thomas <giles.tho...@gmail.com>wrote: > >> Your DNS providers aren't completely in the wrong. The problem as I >> understand it is that the DNS standard itself doesn't support CNAMEs for >> "naked" domains, like foo.com, if you have any other data associated >> with them -- like mail records. See < >> http://superuser.com/questions/264913/cant-set-example-com-as-a-cname-record>. >> This is something that it would be great if the standards bodies fixed, but >> standards move slowly and there may be underlying problems that I just >> don't understand that would make it hard to change. >> >> So the question is, why use CNAMEs instead of A records? If you're using >> a hosting provider, it adds a level of indirection where your they can >> change stuff to load-balance your site without asking you to set up your >> own complex DNS stuff (round-robin, etc) or constantly change the IP you're >> pointing to. This is useful not just for smaller sites, some of the big >> ones do this -- "dig www.reddit.com" for a nice example, it looks like >> they're using Akamai. >> >> Anyway, I think the real underlying requirement is that lots of people >> want to have their site visible at both foo.com and www.foo.com. The >> answer we've chosen for the PythonAnywhere website itself is to have the >> "official site" at www.pythonanywhere.com, and then to ask our DNS >> provider (Joker.com) to do an HTTP-level redirect, so that >> http://pythonanywhere.com/something gets redirected over to >> http://www.pythonanywhere.com/something. I do that on my personal blog >> too -- see http://gilesthomas.com/. >> >> This has two advantages: firstly, by making the "www" domain the official >> one, we can use a CNAME and load-balance ourselves like we do our >> customers. Secondly, instead of having two identical sites at slightly >> different hostnames, we have one canonical one at one domain. This means >> that all incoming links to our site go to the canonical version, which >> means that the Google PageRank effect of the incoming links isn't spread >> across two "different" domains, so we get a higher overall PageRank. >> (There's also possibly an advantage in that Google apparently downrank >> sites that appear to just be copies of other sites, and by only having one >> official site then you lower the risk of that happening.) >> >> Now, given the weirdness you saw earlier with http_referrer and http_host >> being wrong, it's actually quite possible that your current DNS host >> support an HTTP-level redirect like the one we have. So if you set that up >> so that yourdomain.com does an HTTP redirect to www.yourdomain.com, and >> then www.yourdomain.com has a CNAME to yourusername.pythonanywhere.com, >> you should be set! >> >> I hope that wasn't too rambling and incoherent... >> >> >> All the best, >> >> Giles >> >> >> >> >> >> On 12 February 2013 19:03, Jim Steil <ato.st...@gmail.com> wrote: >> >>> Yes, I don't believe it is a pythonanywhere problem. I'm using mydomain >>> for DNS hosting. They are now telling me that I cannot setup a cname for >>> my root domain if I'm using their mailservers and have the mx records point >>> to them. That sounds like a bunch of crap to me, but that is what their >>> support is telling me. >>> >>> The problem I was having earlier was when I had the DNS setup to point >>> the url to myaccount.pythonanywhere.com. Why were sending the traffic, >>> but the referer was set to urlOfMyApp.com and http_host was set to >>> myaccount.pythonanywhere.com. So, I definitely think it is a DNS host >>> problem but they are telling me that what I want to do is not possible, >>> with them or any host. I'm in no position to argue because I know little >>> or nothing of DNS. >>> >>> -Jim >>> >>> >>> On Tue, Feb 12, 2013 at 12:33 PM, Giles Thomas >>> <giles.tho...@gmail.com>wrote: >>> >>>> Hi there, >>>> >>>> PythonAnywhere developer here. I assume that the request environment >>>> where Jim S was seeing the incorrect http_host is the underlying WSGI >>>> environment -- is that correct? If so, that's a weird result. We >>>> definitely don't do anything strange and hacky with those headers; I just >>>> ran a test app to confirm and it was set to the correct domain -- that is, >>>> I saw the correct http_host, and the http_referer was unset. >>>> >>>> Jim, perhaps you could point me at the app that had that error? Is >>>> there any chance that you'd set up a non-CNAME redirect at your DNS >>>> provider? I know that Joker (our one) offers not just CNAMEs but >>>> "Web-redirects", which just does an HTTP redirect to the name you provide. >>>> Perhaps your provider confuses the two in their interface? >>>> >>>> Just for clarity: the link through to the >>>> username.pythonanywhere.comdomain works purely at the DNS level. We need >>>> to be able to move web apps >>>> from IP address to IP address for load balancing, so we ask our customers >>>> to set up their domain with a CNAME to username.pythonanywhere.comwith >>>> their DNS provider. But that's just a DNS thing; by the time a >>>> request from a browser gets to our servers, it's just to a specific IP >>>> address, with the appropriate Host: header in the HTTP request. >>>> >>>> There should definitely be no weird redirects going on; requests are >>>> routed to the appropriate WSGI app based entirely on the hostname provided >>>> in the HTTP request, and while that routing knows about which user's >>>> sandbox the request should be routed to, it knows nothing about the >>>> username.pythonanywhere.com domain. >>>> >>>> >>>> All the best, >>>> >>>> Giles >>>> >>>> >>>> >>>> >>>> >>>> On Tuesday, February 12, 2013 4:07:19 PM UTC, Jim S wrote: >>>>> >>>>> Yes, might be a show-stopper for me and others trying to use >>>>> pythonanywhere. I was thinking there were others on the list using >>>>> pythonanywhere successfully with web2py. My problem is I know little >>>>> about >>>>> DNS and routing. My DNS is hosted by mydomain.com. There is also a >>>>> good chance that I've got something screwed up there too... >>>>> >>>>> -Jim >>>>> >>>>> On Tuesday, February 12, 2013 9:58:11 AM UTC-6, Jonathan Lundell wrote: >>>>>> >>>>>> On 12 Feb 2013, at 7:48 AM, Jim S <j...@qlf.com> wrote: >>>>>> >>>>>> Looking at request.env I'm seeing the following: >>>>>> >>>>>> http_host = >>>>>> myaccountname.pythonanywhere.**com<http://myaccountname.pythonanywhere.com> >>>>>> http_referer = http://www.myappurl.com >>>>>> >>>>>> I'm routing in my routes.py based on www.myappurl.com but it never >>>>>> goes there. It is always going to >>>>>> myaccountname.pythonanywhere.**com<http://myaccountname.pythonanywhere.com> >>>>>> . >>>>>> >>>>>> >>>>>> Interesting. That seems like a real hack on the part of Python >>>>>> Anywhere, and not just because of this problem, but also because you have >>>>>> no idea what the real referrer is. Lots of analytics tools depend on >>>>>> that. >>>>>> >>>>>> >>>>>> -Jim >>>>>> >>>>>> On Tuesday, February 12, 2013 9:25:27 AM UTC-6, Jim S wrote: >>>>>>> >>>>>>> So you mean to just look at it through a regular view, not in the >>>>>>> routes.py. Got it. Wasn't thinking straight. >>>>>>> >>>>>>> -Jim >>>>>>> >>>>>>> On Monday, February 11, 2013 11:13:23 PM UTC-6, Jonathan Lundell >>>>>>> wrote: >>>>>>>> >>>>>>>> On 11 Feb 2013, at 7:48 PM, Jim Steil <ato....@gmail.com> wrote: >>>>>>>> >>>>>>>> Sorry for being slow at this, route configuration is certainly not >>>>>>>> a forte of mine. Is there something special I need to do to turn on >>>>>>>> logging? How would I examine request.env? I'm running all of this >>>>>>>> from >>>>>>>> pythonanywhere and don't really know where to find these things. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> =BEAUTIFY(request) or =BEAUTIFY(request.env) should do the trick. >>>>>>>> >>>>>>>> Logging depends on your deployment, but it's worth figuring out. >>>>>>>> Look at logging.example.conf. You can set the loglevel of routing in >>>>>>>> routes.py. >>>>>>>> >>>>>>>> It's really too bad that logging is such a pain to get configured, >>>>>>>> because it's really valuable. >>>>>>>> >>>>>>>> >>>>>>>> -Jim >>>>>>>> >>>>>>>> On Mon, Feb 11, 2013 at 9:06 PM, Jonathan Lundell < >>>>>>>> jlun...@pobox.com> wrote: >>>>>>>> >>>>>>>>> On 11 Feb 2013, at 7:01 PM, Jim S <j...@qlf.com> wrote: >>>>>>>>> >>>>>>>>> Jonathan >>>>>>>>> >>>>>>>>> I am currently using that as my base for getting this working. >>>>>>>>> Here is what I have so far: >>>>>>>>> >>>>>>>>> routers = dict( >>>>>>>>> # base router >>>>>>>>> BASE=dict(domains = {"www.website1.com":"mustangs"**, >>>>>>>>> "www.website2.com":"icysa", })) >>>>>>>>> >>>>>>>>> But, anytime I to either URL, I get the web2py welcome app. >>>>>>>>> >>>>>>>>> Also, I've saved the file as routes.py. >>>>>>>>> >>>>>>>>> >>>>>>>>> And restarted, right? >>>>>>>>> >>>>>>>>> Try turning on logging for routes and see what you get. You might >>>>>>>>> also examine request.env, and make sure that the target domain is >>>>>>>>> showing >>>>>>>>> up properly. >>>>>>>>> >>>>>>>>> >>>>>>>>> -Jim >>>>>>>>> >>>>>>>>> On Monday, February 11, 2013 6:32:41 PM UTC-6, Jonathan Lundell >>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>> On 11 Feb 2013, at 3:36 PM, Jim S <j...@qlf.com> wrote: >>>>>>>>>> >>>>>>>>>> I'm trying to route traffic that comes in on a specific URL to a >>>>>>>>>> specifc app. >>>>>>>>>> >>>>>>>>>> Example: >>>>>>>>>> >>>>>>>>>> www.host1.com should route to the welcome app >>>>>>>>>> >>>>>>>>>> www.host2.com should route to mySpecific app >>>>>>>>>> >>>>>>>>>> I realize this is probably trivial, but I'm really struggling >>>>>>>>>> with it. Hoping to do it with routes.py and not through wsgi stuff. >>>>>>>>>> Please feel free to set me straight if that is not advisable. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Look at the domain-routing provision in the parametric router. >>>>>>>>>> Documentation in the book, and in router.example.py. >>>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>> -- >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>> >>>> --- >>>> You received this message because you are subscribed to the Google >>>> Groups "web2py-users" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to web2py+unsubscr...@googlegroups.com. >>>> For more options, visit https://groups.google.com/groups/opt_out. >>>> >>>> >>>> >>> >>> -- >>> >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "web2py-users" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to web2py+unsubscr...@googlegroups.com. >>> For more options, visit https://groups.google.com/groups/opt_out. >>> >>> >>> >> >> >> >> -- >> Giles Thomas >> gi...@giles.net >> http://www.gilesthomas.com/ >> http://learningwebgl.com/ >> http://pythonanywhere.com/ >> >> >> <http://learningwebgl.com/> >> >> -- >> >> --- >> You received this message because you are subscribed to the Google Groups >> "web2py-users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to web2py+unsubscr...@googlegroups.com. >> For more options, visit https://groups.google.com/groups/opt_out. >> >> >> > > -- --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.