Web Server mean's what?
A web server is software that listens for
requests and returns data (usually a file). When you type “www.mysite.com”, the
request is forwarded to a machine running web server software which returns a
file back to your browser, e.g. the contents of index.html. The browser might
then make further requests based on the HTML content, e.g. CSS, JavaScript, and
graphic files.
Since the web server sits between your
browser and the requested file, it can perform processing that is not possible
by opening an HTML file directly. For example, it can parse PHP code which
connects to a database and returns data.
You can use your host’s web server for
testing, but uploading will become tiresome and changes could go live before
they had been fully tested. What you need is a local web server installation.
Why we need Apache?
In general, I would recommend using the web server
software that your web host uses. Unless you are creating ASP.NET applications
on Microsoft IIS, your host is likely to use Apache: the most widespread and fully-featured
web server available. It is open-source project so it does not cost anything to
download or install.
The following instructions describe how to install
Apache on Windows. Mac OSX comes with Apache and PHP, although you might need
to enable them. Most Linux users will have Apache
pre-installed or available in the base repositories.
All packages in
one
There are some excellent all-in-one Windows
distributions that contain Apache, PHP, MySQL and other applications in a
single installation file, e.g. XAMPP
(including a Mac version), WampServer
and Web.Developer. There is nothing wrong with using
these packages, although manually installing Apache will help you learn more
about the system
Installation
Wizard – Apache
An excellent official .msi installation wizard is
available from the Apache download page. This option is certainly
recommended for novice users or perhaps those installing Apache for the first
time.
Manual
Installation
Manual installation offers several benefits:
- backing up, reinstalling, or moving the web server can be achieved in seconds (see 8 Tips for Surviving PC Failure)
- you have more control over how and when Apache starts
- you can install Apache anywhere, such as a portable USB drive (useful for client demonstrations).
Step 1: configure IIS, Skype and other software
(optional)
If you have a Professional or Server version of
Windows, you may already have IIS installed. If you would prefer Apache, either
remove
IIS as a Windows component or disable its services.
Apache listens for requests on TCP/IP port 80. The
default installation of Skype also listens on this port and will cause
conflicts. To switch it off, start Skype and choose Tools > Options >
Advanced > Connection. Ensure you untick “Use port 80 and 443 as
alternatives for incoming connections”.
Step 2: download the files
We are going to use the unofficial Windows binary
from Apache
Lounge. This version has performance and stability improvements over
the official Apache distribution, although I am yet to notice a significant
difference. However, it is provided as a manually installable ZIP file from www.apachelounge.com/download/
You should also download and install the Windows C++ runtime from
Microsoft.com. You may have this installed already, but there is no
harm installing it again.
As always, remember to virus scan all downloads.
Step 3: extract the files
We will install Apache in C:\Apache2, so extract
the ZIP file to the root of the C: drive.
Apache can be installed anywhere on your system,
but you will need to change the configuration file paths accordingly…
Step 4: configure Apache
Apache is configured with the text file \conf\httpd.conf contained in the
Apache folder. Open it with your favourite text editor.
Note that all file path settings use a ‘/’ forward-slash
rather than the Windows backslash. If you installed Apache anywhere other than
C:\Apache2, now is a good time to search and replace all references to
“c:/Apache2″.
There are several lines you should change for your
production environment:
Line 46; listen to all requests on port 80:
Listen
*:80
Line 116, enable mod-rewrite by removing the #
(optional, but useful):
LoadModule
rewrite_module modules/mod_rewrite.so
Line 172, specify the server domain name:
ServerName
localhost:80
Line 224, allow .htaccess overrides:
AllowOverride
All
Step 5: change the web
page root (optional)
By default, Apache return files found in its htdocs
folder. I would recommend using a folder on another drive or partition to make
backups and re-installation easier. For the purposes of this example, we will
create a folder called D:\WebPages and change httpd.conf accordingly:
Line 179, set the root:
DocumentRoot
"D:/WebPages"
and line 204:
<Directory
"D:/WebPages">
Step 6: test your installation
Your Apache configuration can now be tested. Open a
command box (Start > Run > cmd) and enter:
cd
\Apache2\bin
httpd
-t
Correct any httpd.conf configuration errors and
retest until none appear.
Step 7: install Apache as a Windows service
The easiest way to start Apache is to add it as a
Windows service. From a command prompt, enter:
cd
\Apache2\bin
httpd
-k install
Open the Control Panel, Administrative Tools, then
Services and double-click Apache2.2. Set the Startup type to “Automatic” to
ensure Apache starts every time you boot your PC.
Alternatively, set the Startup type to “Manual” and
launch Apache whenever you choose using the command “net start Apache2.2″.
Step 8: test the web server
Create a file named index.html in Apache’s web page
root (either htdocs or D:\WebPages) and add a little HTML code:
<html>
<head><title>testing
Apache</title></head>
<body><p>Apache
is working!</p></body>
</html>
Ensure Apache has started successfully, open a web
browser and enter the address http://localhost/.
If all goes well, your test page should appear.
In general, most problems will be caused by an
incorrect setting in the httpd.conf configuration file. Refer to the Apache
documentation if you require further information.
No comments:
Post a Comment