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.


Reply via email to