gnuherds-app-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Microformats and logical URLs -- mod_rewrite


From: Davi Leal
Subject: Re: Microformats and logical URLs -- mod_rewrite
Date: Mon, 23 Apr 2007 23:21:15 +0200
User-agent: KMail/1.9.5

Victor Engmark wrote:
> > "/jobs"  or  "/jobs/"  ?
>
> The latter. I first thought the former was OK, since the server (correctly)
> resolves it to "/jobs/", but I found an article a few days ago which
> explained that this actually takes a few more cycles at the server, since
> it has to figure out whether you're referring to a directory or a file.

After reading the Microformats links, which you sent some emails ago, I think 
we must use the former "/jobs".

Microformats advise using "/jobs" instead of "/jobs/".

  Ref.: http://www.xfront.com/microformats/elementals.html


> A transitory solution is not much work (since we still have few pages), and
> it could be a goal to work towards - E.g., move FS_Job_Offers.php to
> /jobs/index.php, change the URLs, replace the URL redirection with a
> rewrite, and remove the latter when the logs show nobody is using the old
> URL.

I think we must keep the current physical URLs (*.php) and use mod_rewrite to 
define the new logical URLs:


  Logical vs Physical URLs

   A logical URL identifies a resource. For example,
   this is a logical URL:
      https://gnuherds.org/jobs

   A physical URL identifies a particular content
   (MIME) type. For example, this is a physical URL:
      https://gnuherds.org/FS_Job_Offers.php

   There are multiple reasons for favoring logical URLs
   over physical URLs [1]. Now we see another reason:
   by using logical URLs the Web site can be used as
   a tag space!

   [1] http://www.xfront.com/REST-Web-Services.html



So, it seems that using mod_rewrite is even convenient. It makes it easier to 
define the logical URLs. What I propose now is:

   physical URLs:      *.php

   logical URLs:       /tag


Some days ago I did not like the extra complexity of the mod_rewrite layer, 
however now, not only I agree but I even propose to use it. Always looking 
for the best technical solution ...

Of course, the links at the webapp pages will link to the logical URLs, not to 
the physical ones.

Final note:  As the webapp uses only one directory, we can use just href="tag" 
instead of href="/tag".

I think the Klaus' architecture should take all this into account. And as 
Victor exposed, it could be easy add this mod_rewrite layer to the current 
webapp at production. What do you think?

The logical-physical URLs relation which I propose is:

  https://gnuherds.org/Home.php
                      /home

  https://gnuherds.org/Charter.php
                      /charter

  https://gnuherds.org/Timeline.php
                      /news or /timeline ???

  https://gnuherds.org/GNU_Herds_Hackers_Guide.php
                      /guide ???

  https://gnuherds.org/FAQ.php
                      /faq

  https://gnuherds.org/FS_Job_Offers.php
                      /jobs

  https://gnuherds.org/FS_Business_Networks.php
                      /business or business_networks  ???

  https://gnuherds.org/e-Voting_SIG.php
                      /evote ???

  https://gnuherds.org/Lost_Password.php
                      /lost_password ???

  https://gnuherds.org/Person.php
                      /person

  https://gnuherds.org/Company.php
                      /company

  https://gnuherds.org/non-profit_Organization.php
                      /nonprofit

  https://gnuherds.org/View_Job_Offer.php?JobOfferId=XXX
                      /view_job_offer?JobOfferId=XXX  ???

  https://gnuherds.org/Qualifications.php
                      /qualifications

  https://gnuherds.org/Manage_Job_Offers.php
                      / ???

  https://gnuherds.org/View_Job_Applications_State.php
                      / ???

  https://gnuherds.org/Job_Offer.php?JobOfferId=XXX
                      /offer or /joboffer ???

  https://gnuherds.org/Manage_Job_Offer_Applications.php?JobOfferId=XXX
                      / ???

  https://gnuherds.org/View_Qualifications.php?EntityId=XXX
                      /view_qualifications?EntityId=XXX


 1.- I do not know how fit the GET parameters.
 2.- I think "/view_job_offer" looks better than "/viewoffer" or ...

Again, what do you think?

Davi




reply via email to

[Prev in Thread] Current Thread [Next in Thread]