Home Accessibility Courses Twitter The Mouth Facebook Resources Site Map About Us Contact
Python and Tcl - public course schedule [here]
Private courses on your site - see [here]
Please ask about maintenance training for Perl, PHP, Lua, etc
Virtual Hosting with Apache http server - an overall scheme, and avoiding common pitfalls

During many of our courses, I write code snippet examples and add them to our website so that the delegates can refer back to them later - and they also form an ongoing resource for others who happen to be looking for examples. But on our Linux Web Server (LAMP) courses, there's far less original code to be written, so fewer opportunities for me to talk about (and document) things which will be important to newcomers to the subject. Yesterday, though ... brought a couple of exceptional new examples:

a) Setting up Virtual Hosting for a whole lot of different domains

There are some "Gotcha"s if you're new to Virtual Hosting ...

i) You need to consider (and code for) the default case of what happens to requests for domains which do not have their own VirtualHost blocks - that includes any requests to the server by IP address number, and any requests which are made using the older HTTP/1.0 standard without any host name specified at all. Solution shown in the example - an empty VirtualHost block which ensures that any such requests use purely the defaults from the main configuration file

ii) You should remember that you're likely to want to serve requests with AND without a leading www. ... Solution shown in example - uses a ServerName and a ServerAlias directive as well

iii) The document root needs to be moved to its own area ... you'll be serving different content on different sites. You need to ensure that the permissions are going to work for every site too. Solution shown in example - add a Directory block in (each) VirtualHost

iv) When you come to look back at how busy your web sites have been, you'll want to know which visitors have come to which site, and in an easier way than trying to filter them from a single log file. Solution shown in example - add a CustomLog to each VirtualHost; while we were at it, we added a separate ErrorLog too, and specified that the logging was to be "combined" rather than "common" so we can look back at our visitors and know where they arrived from, and which browser they're using (or if they're robotic).

Sample - [here].

Virtual Hosting may often be set up through tools such as Webmin, Plesk or cPanel. You should be aware that if you alter the files directly, your changes may get overwritten later by the tool, or even cause the tool to malfunction.

b) Testing the MySQL and PHP are installed, running and talking to each other

An example PHP program - in which we read data from a database through the PHP program, and display it onto the screen, was written ... see [source] and [run it]. This tests the mysql rather than the mysqli drivers, and of course you'll need to change the database password and login to your own and populate the database first (the commands for this are in the course file!)
(written 2011-01-14)

Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
A604 - Web Application Deployment - Apache httpd - virtual hosts
  [4404] Which (virtual) host was visited? Tuning Apache log files, and Python analysis - (2015-01-23)
  [3568] Telling which ServerAlias your visitor used - useful during merging domains - (2012-01-04)
  [1896] Virtual Hosts and Virtual Servers - (2008-11-20)
  [1687] Virtual Hosting on Apache httpd - a primer example - (2008-06-25)
  [690] Adding Virtual Hosts - (2006-04-19)

H114 - Sourcing, installing and configuring PHP
  [4437] Adding a PHP build option, rotating an image based on camera data, and a new look at thumbnails in PHP - (2015-02-22)
  [4319] PHP - some quick fixes if scripts have issues, and how to use our support - (2014-11-19)
  [3955] Building up from a small PHP setup to an enterprise one - (2012-12-16)
  [3635] Parse error: parse error, unexpected T_STRING on brand new web site - why? - (2012-03-03)
  [2646] Compile but do not run PHP - syntax check only - (2010-02-22)
  [2589] Your PHP code does not work? Here is where to start looking. - (2010-01-18)
  [2433] Controlling, supressing, enabling PHP error messages - (2009-10-02)
  [2317] How to make a Risotto (PHP build style) - (2009-08-02)
  [1936] Quick Summary - PHP installation - (2008-12-12)
  [1768] What is built in to this httpd and PHP? - (2008-08-23)
  [1731] Apache httpd, MySQL, PHP - installation procedure - (2008-08-01)
  [1688] cannot restore segment prot after reloc message - PHP / httpd - (2008-06-26)
  [1667] Checking server performance for PHP generated pages - (2008-06-06)
  [934] Clustering, load balancing, mod_rewrite and mod_proxy - (2006-11-21)
  [481] PHP upgrade - traps to watch - (2005-10-31)
  [316] Development Environments - (2005-05-19)
  [192] Current MySQL and PHP paths and upgrades - (2005-01-28)

Back to
Lua, Tcl, Python; Worldwide training classes
Previous and next
Horse's mouth home
Forward to
An image from a website that occasionally comes out as hyroglyphics
Some other Articles
A framework with python - Django - first steps
A time to be brave? We should ask for what is best for our area.
Melksham Weather - Warm and windy becoming colder and calmer
An image from a website that occasionally comes out as hyroglyphics
Virtual Hosting with Apache http server - an overall scheme, and avoiding common pitfalls
Lua, Tcl, Python; Worldwide training classes
New Computers for delegates to use
Extra courses - C and C++
How does your browser find out about itself?
Burger me!
4759 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 at 50 posts per page

This is a page archived from The Horse's Mouth at http://www.wellho.net/horse/ - the diary and writings of Graham Ellis. Every attempt was made to provide current information at the time the page was written, but things do move forward in our business - new software releases, price changes, new techniques. Please check back via our main site for current courses, prices, versions, etc - any mention of a price in "The Horse's Mouth" cannot be taken as an offer to supply at that price.

Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).

You can Add a comment or ranking to this page

© WELL HOUSE CONSULTANTS LTD., 2019: 404 The Spa • Melksham, Wiltshire • United Kingdom • SN12 6QL
PH: 01225 708225 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho

PAGE: http://www.wellho.net/mouth/3132_Vir ... falls.html • PAGE BUILT: Sat May 27 16:49:10 2017 • BUILD SYSTEM: WomanWithCat