How does Concrete5 arrange it's absolute paths?

Short answer: All page requests are actually going through the one and only index. Php file. Page content is stored in the database, not in files on the server Long answer: Concrete5 (and most PHP-based CMS's for that matter) work like this: all requests are routed through the index.

Php file. This routing is enforced with some mod_rewrite rules in the . Htaccess file.

The rules say "for any request, don't actually go to that page, but instead go to index. Php and pass the rest of the requested path as $_GET parameters". Then in the index.

Php code (or some other code that is included by the index. Php file), the requested page is determined based on the path that was put into the $_GET parameters by Apache (as per the mod_rewrite rule in . Htaccess), and the appropriate content is retrieved from the database Storing content in the database as opposed to files on the server has several advantages.

For example, you can re-use the same html template -- header, footer, sidebar -- on every page, and if you change the template it will automatically be reflected on all pages it's used on. Also, it makes it easier to shuffle pages around and to give them whatever URL you want (e.g. No ". Php" extension at the end, or /2010/11/date/based/paths/for/blog/posts) The disadvantage of course is that every request requires many database queries, but for most sites (those without zillions of page views), the trade-off is well worth it (and various types of caching can help reduce the performance hit).

Short answer: All page requests are actually going through the one and only index. Php file. Page content is stored in the database, not in files on the server.

Long answer: Concrete5 (and most PHP-based CMS's for that matter) work like this: all requests are routed through the index. Php file. This routing is enforced with some mod_rewrite rules in the .

Htaccess file. The rules say "for any request, don't actually go to that page, but instead go to index. Php and pass the rest of the requested path as $_GET parameters".

Then in the index. Php code (or some other code that is included by the index. Php file), the requested page is determined based on the path that was put into the $_GET parameters by Apache (as per the mod_rewrite rule in .

Htaccess), and the appropriate content is retrieved from the database. Storing content in the database as opposed to files on the server has several advantages. For example, you can re-use the same html template -- header, footer, sidebar -- on every page, and if you change the template it will automatically be reflected on all pages it's used on.

Also, it makes it easier to shuffle pages around and to give them whatever URL you want (e.g. No ". Php" extension at the end, or /2010/11/date/based/paths/for/blog/posts). The disadvantage of course is that every request requires many database queries, but for most sites (those without zillions of page views), the trade-off is well worth it (and various types of caching can help reduce the performance hit).

I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.

Related Questions