]> granicus.if.org Git - apache/blob - docs/manual/getting-started.html.en
Update transforms.
[apache] / docs / manual / getting-started.html.en
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
4         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5               This file is generated from xml source: DO NOT EDIT
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7       -->
8 <title>Getting Started - Apache HTTP Server</title>
9 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
12 <script src="./style/scripts/prettify.js" type="text/javascript">
13 </script>
14
15 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
16 <body id="manual-page"><div id="page-header">
17 <p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="./faq/">FAQ</a> | <a href="./glossary.html">Glossary</a> | <a href="./sitemap.html">Sitemap</a></p>
18 <p class="apache">Apache HTTP Server Version 2.5</p>
19 <img alt="" src="./images/feather.gif" /></div>
20 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
21 <div id="path">
22 <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="./">Version 2.5</a></div><div id="page-content"><div id="preamble"><h1>Getting Started</h1>
23 <div class="toplang">
24 <p><span>Available Languages: </span><a href="./en/getting-started.html" title="English">&nbsp;en&nbsp;</a></p>
25 </div>
26
27 <p>If you're completely new to the Apache HTTP Server, or even to running
28 a website at all, you might not know where to start, or what questions to
29 ask. This document walks you through the basics.</p>
30 </div>
31 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#clientserver">Clients, Servers, and URLs</a></li>
32 <li><img alt="" src="./images/down.gif" /> <a href="#dns">Hostnames and DNS</a></li>
33 <li><img alt="" src="./images/down.gif" /> <a href="#configuration">Configuration Files and Directives</a></li>
34 <li><img alt="" src="./images/down.gif" /> <a href="#content">Web Site Content</a></li>
35 <li><img alt="" src="./images/down.gif" /> <a href="#logs">Log Files and Troubleshooting</a></li>
36 <li><img alt="" src="./images/down.gif" /> <a href="#other">What Else Do I Need To Know?</a></li>
37 </ul></div>
38 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
39 <div class="section">
40 <h2><a name="clientserver" id="clientserver">Clients, Servers, and URLs</a></h2>
41
42
43 <p>
44 Addresses on the Web are expressed with URLs - Uniform Resource Locators
45 - which specify a protocol (e.g. <code>http</code>), a servername (e.g.
46 <code>www.apache.org</code>), a URL-path (e.g.
47 <code>/docs/current/getting-started.html</code>), and possibly a query
48 string (e.g. <code>?arg=value</code>) used to pass additional
49 arguments to the server. 
50 </p>
51
52 <p>A client (e.g., a web browser) connects to a server (e.g., your Apache HTTP Server), 
53 with the specified protocol, and makes a <strong>request</strong> for a resource using the
54 URL-path.</p>
55
56 <p>The URL-path may represent any number of things on the server. It may
57 be a file (like <code>getting-started.html</code>) a handler (like <a href="mod/mod_status.html">server-status</a>) or some kind of program
58 file (like <code>index.php</code>). We'll discuss this more below in
59 the <a href="#content">Web Site Content</a> section.</p>
60
61 <p>
62 The server will send a <strong>response</strong> consisting of a status
63 code and, optionally, a response body.
64 The status code indicates whether the request was successful, and, if not, what
65 kind of error condition there was. This tells the client what it should
66 do with the response. You can read about the possible response codes in
67 <a href="http://wiki.apache.org/httpd/CommonHTTPStatusCodes">HTTP Server
68 wiki</a>.</p>
69
70 <p>Details of the transaction, and any error conditions, are written to
71 log files. This is discussed in greater detail below in the <a href="#logs">Logs Files and Troubleshooting</a> section.</p>
72
73 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
74 <div class="section">
75 <h2><a name="dns" id="dns">Hostnames and DNS</a></h2>
76
77
78 <p>In order to connect to a server, the client will first have to resolve
79 the servername to an IP address - the location on the Internet where the
80 server resides. Thus, in order for your web server to be reachable, it
81 is necessary that the servername be in DNS.</p>
82
83 <p>More than one hostname may point to the same IP address, and more
84 than one IP address can be attached to the same physical server. Thus, you
85 can run more than one web site on the same physical server, using a
86 feature called <a href="vhosts/">virtual hosts</a>.</p>
87
88 <p>If you don't know how to do this, you'll need to contact your network
89 administrator, or Internet service provider, to perform this step for
90 you.</p>
91
92 <p>If you are testing a server that is not Internet-accessible, you
93 can put host names in your hosts file in order to do local resolution.
94 For example, you might want to put a record in your hosts file to map a
95 request for <code>www.example.com</code> to your local system, for
96 testing purposes. This entry would look like:</p>
97
98 <div class="example"><p><code>
99 127.0.0.1 www.example.com
100 </code></p></div>
101
102 <p>A hosts file will probably be located at <code>/etc/hosts</code> or
103 <code>C:\Windows\system32\drivers\etc\hosts</code>.</p>
104
105 <p>You can read more about the hosts file at <a href="http://en.wikipedia.org/wiki/Hosts_(file)">Wikipedia.org/wiki/Hosts_(file)</a>, and
106 more about DNS at <a href="http://en.wikipedia.org/wiki/Domain_Name_System">Wikipedia.org/wiki/Domain_Name_System</a>.</p>
107 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
108 <div class="section">
109 <h2><a name="configuration" id="configuration">Configuration Files and Directives</a></h2>
110
111
112 <p>The Apache HTTP Server is configured via simple text files.
113 These files may be located any of a variety of places, depending on how
114 exactly you installed the server. Common locations for these files may
115 be found <a href="http://wiki.apache.org/httpd/DistrosDefaultLayout">in
116 the httpd wiki</a>. If you installed httpd from source, the default
117 location of the configuration files is
118 <code>/usr/local/apache2/conf</code>. The default configuration file is
119 usually called <code>httpd.conf</code>. This, too, can vary in
120 third-party distributions of the server.</p>
121
122 <p>The configuration is frequently broken into multiple smaller files,
123 for ease of management. These files are loaded via the <code class="directive"><a href="./mod/core.html#include">Include</a></code> directive. The names or locations of
124 these sub-files are not magical, and may vary greatly from one
125 installation to another. Arrange and subdivide these files as
126 makes the most sense to <strong>you</strong>. If the file arrangement
127 you have by default doesn't make sense to you, feel free to rerrange it.</p>
128
129 <p>The server is configured by placing <a href="mod/quickreference.html">configuration directives</a> in these
130 configuration files. A directive is a keyword followed by one or more
131 arguments that set its value.</p>
132
133 <p>The question of "<em>Where should I put that
134 directive?</em>" is generally answered by considering where you want a
135 directive to be effective. If it is a global setting, it should appear
136 in the configuration file, outside of any <code class="directive">&lt;Directory&gt;</code>, <code class="directive">&lt;Location&gt;</code>, <code class="directive">&lt;VirtualHost&gt;</code>, or other section. If it is to
137 apply only to a particular directory, then it should go inside a
138 <code class="directive">&lt;Directory&gt;</code> section referring to
139 that directory, and so on. See the <a href="sections.html">Configuration
140 Sections</a> document for further discussion of these sections.</p>
141
142 <p>In addition to the main configuration files, certain directives may go in
143 <code>.htaccess</code> files located in the content directories.
144 <code>.htaccess</code> files are primarily for people who do not have
145 access to the main server configuration file(s). You can read more about
146 <code>.htaccess</code> files in the <a href="howto/htaccess.html"><code>.htaccess</code> howto</a>.</p>
147
148 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
149 <div class="section">
150 <h2><a name="content" id="content">Web Site Content</a></h2>
151
152
153 <p>Web site content can take many different forms, but may be broadly
154 divided into static and dynamic content.</p>
155
156 <p>Static content is things like HTML files, image files, CSS files,
157 and other files that reside in the filesystem. The <code class="directive"><a href="./mod/core.html#documentroot">DocumentRoot</a></code> directive specifies where in your
158 filesystem you should place these files. This directive is either set
159 globally, or per virual host. Look in your configuration file(s) to
160 determine how this is set for your server.</p>
161
162 <p>Typically, a document called <code>index.html</code> will be served
163 when a directory is requested without a file name being specified. For
164 example, if <code>DocumentRoot</code> is set to
165 <code>/var/www/html</code> and a request is made for
166 <code>http://www.example.com/work/</code>, the file
167 <code>/var/www/html/work/index.html</code> will be served to the
168 client.</p>
169
170 <p>Dynamic content is anything that is generated at request
171 time, and may change from one request to another. There are numerous
172 ways that dynamic content may be generated. Various <a href="handler.html">handlers</a> are available to generate content. <a href="howto/cgi.html">CGI programs</a> may be written to generate
173 content for your site.</p>
174
175 <p>Third-party modules like mod_php may be used to write code that does a
176 variety of things. Many third-party applications, written using a
177 variety of languages and tools, are available for download and
178 installation on your Apache HTTP Server. Support of these third-party
179 things is beyond the scope of this documentation, and you should find
180 their documentation or other support forums to answer your questions
181 about them.</p>
182 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
183 <div class="section">
184 <h2><a name="logs" id="logs">Log Files and Troubleshooting</a></h2>
185
186 <p>As an Apache HTTP Server administrator, your most valuable assets are
187 the log files, and, in particular, the error log. Troubleshooting any
188 problem without the error log is like driving with your eyes closed.</p>
189
190 <p>The location of the error log is defined by the <code class="directive"><a href="./mod/core.html#errorlog">ErrorLog</a></code> directive, which may be set globally,
191 or per virtual host. Entries in the error log tell you what went wrong,
192 and when. They often also tell you how to fix it. Each error log message
193 contains a error code, which you can search for online for even more
194 detailed descriptions of how to address the problem. You can also
195 configure your error log to contain a log ID which you can then
196 correlate to an access log entry, so that you can determine what request
197 caused the error condition.</p>
198
199 <p>You can read more about logging in the <a href="logs.html">logs
200 documentation</a>.</p>
201 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
202 <div class="section">
203 <h2><a name="other" id="other">What Else Do I Need To Know?</a></h2>
204
205 <p>This document covers only the bare basics. We hope that this gets you
206 started, but there are many other things that you might need to know.
207 Here's a partial list of what you might be looking for:</p>
208
209 <ul>
210 <li><a href="howto/auth.html">Authentication and Authorization (password protecting resources)</a></li>
211 <li><a href="howto/access.html">Access Control</a></li>
212 <li><a href="ssl/ssl_howto.html">Setting up SSL</a></li>
213 <li><a href="http://wiki.apache.org/httpd/FAQ">Frequently Asked Questions</a></li>
214 </ul>
215
216 </div></div>
217 <div class="bottomlang">
218 <p><span>Available Languages: </span><a href="./en/getting-started.html" title="English">&nbsp;en&nbsp;</a></p>
219 </div><div id="footer">
220 <p class="apache">Copyright 2012 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
221 <p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="./faq/">FAQ</a> | <a href="./glossary.html">Glossary</a> | <a href="./sitemap.html">Sitemap</a></p></div><script type="text/javascript">
222     if (typeof(prettyPrint) !== undefined) {
223         prettyPrint();
224     }
225 </script>
226 </body></html>