I didn't bother with the 301.  the process returns a 404 which is all I was
worried about for SEO.  All the old style query string based links still
work so it didn't bother me how a user got to the site.  As the search
engines re-index the site the new urls are used anyway.

Take http://www.google.com.au/search?hl=en&q=thumbguard+&meta= for example.
www.thumbguard.com.au is one of the site managed by our cms (not designed by
us) and its coming up 3rd in the listings.  The site has only been up for a
few months aswell.

The url http://www.thumbguard.com.au/index.cfm?category=6 which is the
contact page is mapped in the database to
http://www.thumbguard.com.au/contact/index.cfm. We have a missing template
handler file which uses the path_info value of the request and queries the
database for /contact/index.cfm. With these there is a NonFriendlyURL value
which contains the index.cfm?category=6 value.  Then using some other logic
that I wont go into (secret stuff), the request gets forwarded, not
redirected to the nonfriendlyurl value and is processed normally.  As I
mentioned, the form scope for some reason does not get included though
request scoped vars are still available, so before I do the forward I set
request.FORM = duplicate(FORM) so I now I have request.FORM available to my
index file.  I did have to set up the missing template handler in the cf
server though so if your under a hosted environment this may not be an
option for you as I run my own servers and can do what I like :)

The reason I did this is because I don't like the /go/ method as it makes
the urls look junkie (I think anyway).  Now with CF8 when it comes I believe
you can set a missing template handler per application without setting it on
the server although I haven't tried this method yet.  Doing it this way you
have a lot more freedom with setting up additional mappings and stuff.  An
example is our hosting signup page which is
http://www.inevative.com.au/Services/Hosting/Hosting-Plans/index.cfm can be
mapped to a smaller URL of
http://www.inevative.com.au/hosting-signup/index.cfm.  Another good example
is mapping old urls to new urls.  I used to use the FriendlyURL Servlet and
I moved away from it but some people had bookmarked pages and search engines
had them still indexed so I was able to map the old url like
/fu/Services/index.cfm to /Services/index.cfm without having to find all the
old links in the site and update them.

Also because you are checking the list of urls you can customise the Page
Not Found messages aswell and catch them before CF Server spits it and
before IIS spits it aswell.

Have fun :)

Steve Onnis




-----Original Message-----
From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf
Of Rony
Sent: Friday, 13 July 2007 2:43 PM
To: cfaussie
Subject: [cfaussie] Re: Forms issue


Hey Steve,

Can you explain whether your method would have any negative effects on SEO?

The idea behind this is because i was redirecting with a 301 to tell google
bots to index the new link for the page. By that i mean all
index.cfm?pageid=8989 would now be indexed as /category/children_name and
that way its good for SEO.

Do you know if this affects SEO? Also, can you please send me a link for
what you have done, maybe a good link that indicates ways of doing this
correctly.

Thanks so much for your help

Regards,
Rony

On Jul 13, 1:05 pm, "Steve Onnis" <[EMAIL PROTECTED]> wrote:
> If your doing it in IIS throught he error documents then it wont work.  
> I'm pretty sure all it does is includes the file file but it doesn't 
> processess anything.  In any case if you are doing any sort of 
> redirect you will loose your form variables because of the nature of doing
a redirect.
>
> The only way I have worked out to do this is instead of doing a 
> redirect you need to do a getPageContext().forward([url]); but for 
> that to work I have implemented a missing template handeling process 
> to deal with 404s and grab the correct content.  Thing is though you 
> still loose your form structure, so I set a request.FORM variable like 
> request.FORM = duplicate(FORM) because the request scope is still 
> available to the end page.  From here I just loop over that request.FORM
structure and repopulate  my form scope and continue.
>
> That help?
>
> Steve
>
> -----Original Message-----
> From: [email protected] [mailto:[EMAIL PROTECTED] On 
> Behalf
>
> Of Rony
> Sent: Friday, 13 July 2007 11:59 AM
> To: cfaussie
> Subject: [cfaussie] Re: Forms issue
>
> For apache i send the CGI.redirect_query_string value to a function 
> which then digests it and returns the URL query string (aka anything 
> after "?" and sets the request.url to this return structure). The 
> actual url link is contained in CGI.redirect_url.
>
> IIS, i use the CGI.query_string value and send it to the same function 
> as above.
>
> If you need to code for anything please let me know mate..
>
> On Jul 13, 10:58 am, "Brett Payne-Rhodes" <[EMAIL PROTECTED]> wrote:
> > Hi Rony,
>
> > Great! Can you tell me where you are getting url info from though?
>
> > Sorry I can't help with the form problem...
>
> > Cheers,
>
> > Brett
> > B)
>
> > Rony wrote:
> > > Hi Brett,
>
> > > It works perfectly for me on CF7.
>
> > > Just the form issues.
>
> > > If the form issues was something you meant that didn't work on CF 
> > > 7 then my solution is becoming an issue.
>
> > > If however, the whole concept for displaying non existing URLs in 
> > > CF7, that works fine.
>
> > > I am just stuck on this form issues; I use GET for some of the 
> > > form and they work fine; but this is not a desired solution.
>
> > > On Jul 13, 10:34 am, "Brett Payne-Rhodes" <[EMAIL PROTECTED]> wrote:
> > >> Hi Rony,
>
> > >> Just to clarify...
>
> > >> You have a url
likehttp://www.mysite.com/category/category_children...
> yes?
>
> > >> But it doesn't actually exist in terms of directories on the
webserver?
>
> > >> Your webserver is set up to use index.cfm when it encounters a 
> > >> 404 and
> index.cfm tries to extract the "category/category_children" 
> information from the CGI variables?
>
> > >> If that is the case then I can tell you that this scheme got 
> > >> broken
> when CF7 was released. I was using that exact method (and still am on 
> a CF6
> server) but when I installed the system on a CF7 server it all stopped 
> working - and I was never able to find a solution. So if you find one 
> please let me know. One of the problems is that when you cfdump the 
> CGI scope you don't necessarily see everything in there so what used 
> to be found in cgi.request_uri or cgi.path_info may now be somewhere else.
>
> > >> Cheers,
>
> > >> Brett
> > >> B)
>
> > >> Rony wrote:
> > >>> I have updated by the websever (apache when testing and IIS for
> > >>> production) to point to the index.cfm file when a 404 occurs.
> > >>> Any ideas?
> > >>> On Jul 12, 10:45 pm, "Steve Onnis" <[EMAIL PROTECTED]> wrote:
> > >>>> Right
> > >>>> So how is the $)$ being included or called?  Is it set up in 
> > >>>> IIS or something?
> > >>>> -----Original Message-----
> > >>>> From: [email protected] 
> > >>>> [mailto:[EMAIL PROTECTED] On Behalf Of Rony
> > >>>> Sent: Thursday, 12 July 2007 10:11 PM
> > >>>> To: cfaussie
> > >>>> Subject: [cfaussie] Re: Forms issue The page includes the 
> > >>>> index.cfm which will do the work of find the page id and 
> > >>>> displaying its content...
> > >>>> On Jul 12, 4:27 pm, "Steve Onnis" <[EMAIL PROTECTED]> wrote:
> > >>>>> What are you using to pull the 404 page?  Just an include for 
> > >>>>> a context forward?
> > >>>>> -----Original Message-----
> > >>>>> From: [email protected] 
> > >>>>> [mailto:[EMAIL PROTECTED] On Behalf Of Rony
> > >>>>> Sent: Thursday, 12 July 2007 4:14 PM
> > >>>>> To: cfaussie
> > >>>>> Subject: [cfaussie] Forms issue Hi All, The site i am 
> > >>>>> currently updating uses URL format as follow:
> > >>>>> /category/ category_children. (just as an example) The way i 
> > >>>>> did this was to ensure my web server error 404 scipt pointed 
> > >>>>> to the index.cfm, in which i would get the correct page id and 
> > >>>>> display the content.
> > >>>>> However, i have an obvious issue where by all FORM values do 
> > >>>>> not exist any more (for some reason). I am assuming because i 
> > >>>>> get a
> > >>>>> 404 i lose the form values.
> > >>>>> All my forms post to the script that they are in.
> > >>>>> I don't want to the GET method but rather the POST.
> > >>>>> Any ideas how to overcome this problem?
> > >>>>> Cheers,





--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"cfaussie" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/cfaussie?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to