forked from pool/apache2
This commit is contained in:
committed by
Git OBS Bridge
parent
97abcf1aa4
commit
c028012343
@@ -1,101 +1,6 @@
|
||||
|
||||
QUICKSTART -- How to get your server up and running as fast as possible
|
||||
|
||||
o General machine setup:
|
||||
- configure your network
|
||||
- make sure that all components are current, by running YaST Online Update
|
||||
regularly
|
||||
|
||||
o synchronise time (parts of the HTTP protocol depend on correct time):
|
||||
- configure machine as NTP client, either with the YaST configuration module or
|
||||
by editing /etc/ntp.conf (just put a server name into it) and starting
|
||||
"rcxntpd start", and running "chkconfig -a xntpd"
|
||||
|
||||
o if you run a firewall, make sure to allow access through port 80 if the server
|
||||
should be reachable from other machines.
|
||||
|
||||
o start the server, and configure it to automatically start at boot time:
|
||||
- rcapache2 start
|
||||
- chkconfig -a apache2
|
||||
|
||||
o add web pages:
|
||||
- the DocumentRoot is at /srv/www/htdocs
|
||||
- if you add documents somewhere else and link to them with e.g.
|
||||
Alias someplace "/path/to/someplace"
|
||||
make sure to also use <Directory /path/to/someplace> ... </Directory>
|
||||
to define access permissions and options for that directory, since
|
||||
(starting with SuSE Linux 9.0) access to the entire filesystem is blocked
|
||||
by default. See http://httpd.apache.org/docs-2.2/mod/core.html#directory
|
||||
|
||||
o go through /etc/sysconfig/apache2:
|
||||
- check loaded modules (APACHE_MODULES="...").
|
||||
- add "php4", "perl", or other needed modules to APACHE_MODULES al gusto.
|
||||
- modules can be enabled/disabled in a simple (Debian-compatible ;) way from
|
||||
the command line like this:
|
||||
a2enmod php5
|
||||
a2dismod php5
|
||||
- there is also a command a2enflag, to change APACHE_SERVER_FLAGS
|
||||
- restart the server ('rcapache2 restart')
|
||||
|
||||
o where to add your own configuration:
|
||||
- add e.g. /etc/apache2/httpd.conf.local and change APACHE_CONF_INCLUDE_FILES
|
||||
in /etc/sysconfig/apache2, e.g. APACHE_CONF_INCLUDE_FILES="httpd.conf.local"
|
||||
- to understand the hierarchy and layout of all include files, read the
|
||||
comments at the top of httpd.conf
|
||||
- if you strongly prefer the old, single, 40K, monolithic configuration file,
|
||||
it's there! Just use it:
|
||||
mv /etc/apache2/httpd.conf /etc/apache2/httpd.conf.dist
|
||||
cp /usr/share/doc/packages/apache2/httpd-std.conf-prefork /etc/apache2/httpd.conf
|
||||
rcapache2 restart
|
||||
|
||||
o add virtual hosts:
|
||||
- edit /etc/apache2/listen.conf. It is a suitable place to add
|
||||
NameVirtualHost directives.
|
||||
- copy the commented template /etc/apache2/vhosts.d/vhost.template to
|
||||
/etc/apache2/vhosts.d/yourhost.conf
|
||||
(note, it must end in .conf to be automatically read)
|
||||
- edit /etc/apache2/vhosts.d/yourhost.conf to suit your needs
|
||||
- alternative approach: simply append the NameVirtualHost directive and the
|
||||
<VirtualHost> container to your local configuration (httpd.conf.local --
|
||||
see above)
|
||||
- if in doubt about how apache interprets your vhost setup, always use
|
||||
httpd2 -S. If SSL is involved you will need to run httpd2 -S -DSSL instead --
|
||||
likewise for other needed defines.
|
||||
- the "default" server, which responds to requests not handled by other
|
||||
vhosts, is always the one which is defined first. If you want a dedicated
|
||||
"default" server for such requests, you need to put it first in the configuration.
|
||||
If the configuration is in multiple files, like /etc/apache2/vhosts.d/*.conf, then
|
||||
simply name the file _default.conf, or e.g. _192.168.0.1.conf if you do it per IP
|
||||
address.
|
||||
|
||||
o TROUBLESHOOTING -- if anything does not work:
|
||||
- fire up "tail -F /var/log/apache2/*_log &" in a root shell
|
||||
- reproduce what is not working (starting apache, doing client requests,
|
||||
or whatever), and see how it is reflected in the logs
|
||||
- read http://www.suse.com/~poeml/apache-faq.html
|
||||
- make use of http://bugzilla.novell.com if you suspect a bug
|
||||
|
||||
o for all configuration questions, consult
|
||||
http://localhost/manual (if the apache2-doc package is installed), or
|
||||
http://httpd.apache.org/docs-2.2/ (the online version)
|
||||
- read the documentation under /usr/share/doc/packages/apache2/ (where you
|
||||
will also find example configuration files)
|
||||
|
||||
o building 3rd party modules:
|
||||
- install apache2-devel (and of course gcc as well as other needed
|
||||
development tools)
|
||||
- use
|
||||
apxs2 -- to build a module for all MPM types, or
|
||||
apxs2-prefork -- to build a module for the Prefork MPM, or
|
||||
apxs2-worker -- to build a module for the Worker MPM
|
||||
(see man 8 apxs2). In most cases you can just use "apxs2", the most
|
||||
notably exception being mod_php4. Using apxs2-prefork then will prevent
|
||||
you from accidentally trying to use the module with the Worker MPM.
|
||||
Typical example: apxs2 -c -i -a mod_foo.c
|
||||
-c compiles
|
||||
-i installs the module in the right place
|
||||
-a activates the module by running 'a2enmod mod_foo'
|
||||
- if the module's build system does not allow to use apxs, use at least
|
||||
CFLAGS=$(apxs2 -q CFLAGS)
|
||||
to determine the right compiler flags for your apache installation.
|
||||
This README is now online:
|
||||
http://www.opensuse.org/Apache_Howto_Quickstart
|
||||
|
||||
General starting point:
|
||||
http://www.opensuse.org/Apache
|
||||
|
Reference in New Issue
Block a user