Presented by
Lonnye Bower
Fardin Khan
Chris Orona
APACHE WEB SERVER
Introduction
Note: Images courtesy of apache.org
Introduction to Apache
• Apache is a web server package that
works under Linux as well as under
other operating systems
• The name Apache comes from the
concept of extensive patching of
existing code
• The primary advantage of Apache is
that it is generally free or available at
modest costs
Installing Apache
Installing Apache From a CD-ROM
• If your CD-ROM has Apache and you
want to use RPM to install the package,
issue this command
– rpm –i apache_1_3_4.rpm
(substitute the full name of the Apache package)
Installing Apache From a Download
• Place the downloaded files in a location
that will be dedicated to the Apache
files, such as /usr/apache
• Uncompress the files using either gzip
or tar and compress
• You must edit the configuration file
– You can find more information about this in
the Readme file
Installing Apache… (con’t)
• Uncomment all the Modules in the
configuration file except
– cern_meta_module
– msql_auth_module
– dld_module
• Choose either db_auth_module or
dbm_auth_module; they should not be
used together
Installing Apache… (con’t)
• Create the configuration file for Linux by
issuing the command
– Configure
• Compile Apache by issuing the make
command
– The most common error message
encountered concerns the socket.h library,
most likely because TCP/IP is not installed
Installing Apache… (con’t)
• The result of the compilation will be a
binary file called httpd
• Copy this file into /bin or /usr/bin,
where it will reside in the path
Setting Up the Website
Setting Up the Website
• Create the home directory for the
website, we will use
/usr/www/ganesan
• Create 3 subdirectories under the site
directory
– conf
– htdocs
– logs
Setting Up the Website (con’t)
• You will find a subdirectory called conf
under the directory where you installed
Apache
– Copy 3 files (srm.conf-didst,
access.conf-dist, http.conf-
dist) from this directory into
/usr/www/ganesan/conf
– If you cannot find the 3 files, use the find
command to find them
Setting Up the Website (con’t)
• Rename the 3 files you just copied to
drop the “-dist” portion of the name
• Edit the httpd.conf file to specify
– the port number on which your web server
responds
– the user running the httpd daemon, etc…
• Specify the server name
– ServerName ganesan.com
Setting Up the Website (con’t)
• Add a line that specifies the root
directory for your website
– DocumentRoot
/usr/www/ganesan/htdocs
• Edit the srm.conf file to set up the
web home directory and any special
internal command usage
• Edit the access.conf file to set a
basic set of access permissions
Setting Up the Website (con’t)
• In the htdocs directory create an
HTML file for the server to read when it
starts
– This can be any HTML file
– The filename should be default.html
• Start the httpd daemon
– httpd –f /usr/www/ganesan/conf
Setting Up the Website (con’t)
• Test the web server by starting a
browser and specify the URL
http://127.0.0.1/
• If the system is working properly, you
will see a screen with a list of files in the
htdocs directory
Server Configuration
Server Configuration
• Make sure the ServerType directive is
set to “standalone”
• Check the Port device to make sure it is
set to the TCP/IP port to which your
Apache server listens
• Set the User directive to either the user
ID (UID) or the user name used for all
web visitors
Server Configuration (con’t)
• Set the Group directive to either the group ID
(GID) or the group name assigned to all web
users
• Modify the ServerAdmin directive to include
the e-mail address of the administrator
• Set the ServerRoot directive to the absolute
path to the directory where all Apache
resource and configuration files are stored
– /usr/apache/conf or /etc/httpd
Server Configuration (con’t)
• Set the ServerName directive to the
fully qualified domain name of your
server
Starting and Stopping Apache
Starting and Stopping Apache
• If you are running Apache as a
standalone server, you need to start
and stop Apache manually
– Start with httpd –d rootdir –f
configs
– To stop Apache use ps to detect the httpd
daemon’s PID and use the kill command
to terminate the process
A Note on Starting and Stopping
Apache
• Later versions of Apache include a
script that does the start and stop tasks
for you
Virtual Hosting
Virtual Hosts
• A virtual host is a web server that
resides on one domain but acts as if it
was on another. For example, suppose
you control ganesan.com and
cis454.com. Instead of setting up 2
servers, you can set up a single
machine that serves both domains.
• Virtual hosting saves on machinery and
allows for a lot of flexibility in setting up
web servers
Setting Up Virtual Hosting
• If your network uses a name server for
DNS, modify it so that the domain name
points to your web server for each
domain you’ll host
• Use the ifconfig command to set up
the IP address for each domain on your
server
– ifconfig eth0:1 xxx.xxx.xxx.xxx
Setting Up Virtual Hosting (con’t)
• Add the route to the network configuration
using the route command
– route add –host xxx.xxx.xxx.xxx dev eth0:1
• Edit the Apache httpd.conf file to set up virtual
hosting
– <VirtualHost www.cis454.com>
DocumentRoot /usr/www/cis454/htdocs
TransferLog
/usr/www/cis454/logs/access
ErrorLog /usr/www/cis454/logs/errors
</VirtualHost>
Setting Up Virtual Hosting (con’t)
• The previous step defines the virtual
host for cis454.com and specifies its
DocumentRoot, since each virtual host
will have different web directories
• If more than one virtual host is defined,
the entries are to be repeated for each
A Final Note
• There are many more configuration
options possible with Apache, but they
are usually used for commercial sites
that require authentication or special
handling characteristics
Key Terms
• Apache
• conf
• Server Name
• Virtual Hosting
• ifconfig
Apache Resources
• For more information on Apache go to
– www.apache.org
– www.apacheweek.com
– dev.apache.org
Thank You and Good Luck!
If you have any questions regarding
Apache and/or any part of this
presentation, please feel free to email:
Lonnye Bower at Lonnye@aol.com
Chris Orona at corona@calstatela.edu
Fardin Khan at Fardin24@aol.com

Apache1.ppt

  • 1.
    Presented by Lonnye Bower FardinKhan Chris Orona APACHE WEB SERVER
  • 2.
  • 3.
    Introduction to Apache •Apache is a web server package that works under Linux as well as under other operating systems • The name Apache comes from the concept of extensive patching of existing code • The primary advantage of Apache is that it is generally free or available at modest costs
  • 4.
  • 5.
    Installing Apache Froma CD-ROM • If your CD-ROM has Apache and you want to use RPM to install the package, issue this command – rpm –i apache_1_3_4.rpm (substitute the full name of the Apache package)
  • 6.
    Installing Apache Froma Download • Place the downloaded files in a location that will be dedicated to the Apache files, such as /usr/apache • Uncompress the files using either gzip or tar and compress • You must edit the configuration file – You can find more information about this in the Readme file
  • 7.
    Installing Apache… (con’t) •Uncomment all the Modules in the configuration file except – cern_meta_module – msql_auth_module – dld_module • Choose either db_auth_module or dbm_auth_module; they should not be used together
  • 8.
    Installing Apache… (con’t) •Create the configuration file for Linux by issuing the command – Configure • Compile Apache by issuing the make command – The most common error message encountered concerns the socket.h library, most likely because TCP/IP is not installed
  • 9.
    Installing Apache… (con’t) •The result of the compilation will be a binary file called httpd • Copy this file into /bin or /usr/bin, where it will reside in the path
  • 10.
  • 11.
    Setting Up theWebsite • Create the home directory for the website, we will use /usr/www/ganesan • Create 3 subdirectories under the site directory – conf – htdocs – logs
  • 12.
    Setting Up theWebsite (con’t) • You will find a subdirectory called conf under the directory where you installed Apache – Copy 3 files (srm.conf-didst, access.conf-dist, http.conf- dist) from this directory into /usr/www/ganesan/conf – If you cannot find the 3 files, use the find command to find them
  • 13.
    Setting Up theWebsite (con’t) • Rename the 3 files you just copied to drop the “-dist” portion of the name • Edit the httpd.conf file to specify – the port number on which your web server responds – the user running the httpd daemon, etc… • Specify the server name – ServerName ganesan.com
  • 14.
    Setting Up theWebsite (con’t) • Add a line that specifies the root directory for your website – DocumentRoot /usr/www/ganesan/htdocs • Edit the srm.conf file to set up the web home directory and any special internal command usage • Edit the access.conf file to set a basic set of access permissions
  • 15.
    Setting Up theWebsite (con’t) • In the htdocs directory create an HTML file for the server to read when it starts – This can be any HTML file – The filename should be default.html • Start the httpd daemon – httpd –f /usr/www/ganesan/conf
  • 16.
    Setting Up theWebsite (con’t) • Test the web server by starting a browser and specify the URL http://127.0.0.1/ • If the system is working properly, you will see a screen with a list of files in the htdocs directory
  • 17.
  • 18.
    Server Configuration • Makesure the ServerType directive is set to “standalone” • Check the Port device to make sure it is set to the TCP/IP port to which your Apache server listens • Set the User directive to either the user ID (UID) or the user name used for all web visitors
  • 19.
    Server Configuration (con’t) •Set the Group directive to either the group ID (GID) or the group name assigned to all web users • Modify the ServerAdmin directive to include the e-mail address of the administrator • Set the ServerRoot directive to the absolute path to the directory where all Apache resource and configuration files are stored – /usr/apache/conf or /etc/httpd
  • 20.
    Server Configuration (con’t) •Set the ServerName directive to the fully qualified domain name of your server
  • 21.
  • 22.
    Starting and StoppingApache • If you are running Apache as a standalone server, you need to start and stop Apache manually – Start with httpd –d rootdir –f configs – To stop Apache use ps to detect the httpd daemon’s PID and use the kill command to terminate the process
  • 23.
    A Note onStarting and Stopping Apache • Later versions of Apache include a script that does the start and stop tasks for you
  • 24.
  • 25.
    Virtual Hosts • Avirtual host is a web server that resides on one domain but acts as if it was on another. For example, suppose you control ganesan.com and cis454.com. Instead of setting up 2 servers, you can set up a single machine that serves both domains. • Virtual hosting saves on machinery and allows for a lot of flexibility in setting up web servers
  • 26.
    Setting Up VirtualHosting • If your network uses a name server for DNS, modify it so that the domain name points to your web server for each domain you’ll host • Use the ifconfig command to set up the IP address for each domain on your server – ifconfig eth0:1 xxx.xxx.xxx.xxx
  • 27.
    Setting Up VirtualHosting (con’t) • Add the route to the network configuration using the route command – route add –host xxx.xxx.xxx.xxx dev eth0:1 • Edit the Apache httpd.conf file to set up virtual hosting – <VirtualHost www.cis454.com> DocumentRoot /usr/www/cis454/htdocs TransferLog /usr/www/cis454/logs/access ErrorLog /usr/www/cis454/logs/errors </VirtualHost>
  • 28.
    Setting Up VirtualHosting (con’t) • The previous step defines the virtual host for cis454.com and specifies its DocumentRoot, since each virtual host will have different web directories • If more than one virtual host is defined, the entries are to be repeated for each
  • 29.
    A Final Note •There are many more configuration options possible with Apache, but they are usually used for commercial sites that require authentication or special handling characteristics
  • 30.
    Key Terms • Apache •conf • Server Name • Virtual Hosting • ifconfig
  • 31.
    Apache Resources • Formore information on Apache go to – www.apache.org – www.apacheweek.com – dev.apache.org
  • 32.
    Thank You andGood Luck! If you have any questions regarding Apache and/or any part of this presentation, please feel free to email: Lonnye Bower at Lonnye@aol.com Chris Orona at corona@calstatela.edu Fardin Khan at Fardin24@aol.com

Editor's Notes

  • #2 As we all know, in the UNIX environment there are various flavors of this operating system. To name a few: IBM: AIX SUN: SOLARIS HP: HP-UX SILICON GRAPHICS: IRIX And there’s…………………...