カスタム検索
このエントリーをはてなブックマークに追加
tomo.gif (1144 ツバツイツト)line.gif (927 ツバツイツト)line.gif (927 ツバツイツト)To previous pageTo home pageMailing to me

Apache (HTTPサーバ)の設定

インストール済みのApacheの設定

Modified: 6 September 1999

TurboLinux 4.0 をインストールすれば、ソフトはインストールされていますので、設定ファイルをカスタマイズするだけです。

httpサーバの設定をし、www.yos.lint.ne.jp で、参照でき、ftp.yos.lint.ne.jp でftpしてコンテンツを書き換える実験です。


とりあえず参照できる
外部からftpで書き換えてみる


 とりあえず参照できる

いきなりブラウザで参照する

TurboLinux4.0 をインストールしたPCのホストは、”g6200” です。

ブラウザに、”g6200” を入れると、”http://g6200/” と表示が書きかえられて、以下のような表示が出ますが、多くのWEBサーバのように、

http://www.yos.lint.ne.jp/

で表示できるようにするために、named サーバの設定を変更します。


namedの設定を変える

以下のように、named.hosts に、ftp や、wwwを CNAME で追加します。

@ IN SOA yos.lint.ne.jp. root.yos.lint.ne.jp. (
                                1999071701 ; Serial
                                28800          ; Refresh
                                14400          ; Retry
                                3600000       ; Expire
                                86400 )       ; Minimum
                  IN  NS      yos.lint.ne.jp.
rt80i IN  A 192.168.0.1
k6300 IN  A 192.168.0.2
woodypd IN  A 192.168.0.3
g6200 IN  A 192.168.0.4
thinkpad IN  A 192.168.0.5
p5100 IN  A 192.168.0.6
g466 IN  A 192.168.0.7
cecil IN  A 192.168.0.8
albert IN  A 192.168.0.9
;
ftp IN  CNAME g6200
www IN  CNAME g6200
pop IN  CNAME g6200
mailx IN  CNAME g6200


http://www.yos.lint.ne.jp/で参照してみる

http://www.yos.lint.ne.jp/

apache.gif (22731 ツバツイツト)


ファイルはどこにあるのか

apacheの設定ファイルは、/etc/httpd/conf にありますので、そこの、httpd.conf を見てみます。

動作するしないということではありませんが、最低限、以下のWWWサーバーの管理者のメールアドレスの変更が必要です。

ServerAdmin root@localhost

上記を、以下のように変更します。

ServerAdmin webmastor@yos.lint.ne.jp

以下は、実際の httpd.conf です。

##
## httpd.conf -- Apache HTTP server configuration file
##

# This is the main server configuration file. See URL http://www.apache.org/
# for instructions.

# Do NOT simply read the instructions in here without understanding
# what they do, if you are unsure consult the online docs. You have been
# warned.

# Originally by Rob McCool

# Dynamic Shared Object (DSO) Support
#
# To be able to use the functionality of a module which was built as a DSO you
# have to place corresponding `LoadModule' lines at this location so the
# directives contained in it are actually available _before_ they are used.
# Please read the file README.DSO in the Apache 1.3 distribution for more
# details about the DSO mechanism and run `httpd -l' for the list of already
# built-in (statically linked and thus always available) modules in your httpd
# binary.
#
# Example:
# LoadModule foo_module libexec/mod_foo.so

LoadModule mmap_static_module /usr/libexec/mod_mmap_static.so
LoadModule env_module /usr/libexec/mod_env.so
LoadModule config_log_module /usr/libexec/mod_log_config.so
LoadModule agent_log_module /usr/libexec/mod_log_agent.so
LoadModule referer_log_module /usr/libexec/mod_log_referer.so
LoadModule mime_magic_module /usr/libexec/mod_mime_magic.so
LoadModule mime_module /usr/libexec/mod_mime.so
LoadModule negotiation_module /usr/libexec/mod_negotiation.so
LoadModule status_module /usr/libexec/mod_status.so
LoadModule info_module /usr/libexec/mod_info.so
LoadModule includes_module /usr/libexec/mod_include.so
LoadModule autoindex_module /usr/libexec/mod_autoindex.so
LoadModule dir_module /usr/libexec/mod_dir.so
LoadModule cgi_module /usr/libexec/mod_cgi.so
LoadModule asis_module /usr/libexec/mod_asis.so
LoadModule imap_module /usr/libexec/mod_imap.so
LoadModule action_module /usr/libexec/mod_actions.so
LoadModule speling_module /usr/libexec/mod_speling.so
LoadModule userdir_module /usr/libexec/mod_userdir.so
LoadModule proxy_module /usr/libexec/libproxy.so
LoadModule alias_module /usr/libexec/mod_alias.so
LoadModule rewrite_module /usr/libexec/mod_rewrite.so
LoadModule access_module /usr/libexec/mod_access.so
LoadModule auth_module /usr/libexec/mod_auth.so
LoadModule anon_auth_module /usr/libexec/mod_auth_anon.so
LoadModule dbm_auth_module /usr/libexec/mod_auth_dbm.so
LoadModule db_auth_module /usr/libexec/mod_auth_db.so
LoadModule digest_module /usr/libexec/mod_digest.so
LoadModule cern_meta_module /usr/libexec/mod_cern_meta.so
LoadModule expires_module /usr/libexec/mod_expires.so
LoadModule headers_module /usr/libexec/mod_headers.so
LoadModule usertrack_module /usr/libexec/mod_usertrack.so
LoadModule example_module /usr/libexec/mod_example.so
LoadModule unique_id_module /usr/libexec/mod_unique_id.so
LoadModule setenvif_module /usr/libexec/mod_setenvif.so

# Reconstruction of the complete module list from all available modules
# (static and shared ones) to achieve correct module execution order.
# [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE UPDATE THIS, TOO]

ClearModuleList
AddModule mod_mmap_static.c
AddModule mod_env.c
AddModule mod_log_config.c
AddModule mod_log_agent.c
AddModule mod_log_referer.c
AddModule mod_mime_magic.c
AddModule mod_mime.c
AddModule mod_negotiation.c
AddModule mod_status.c
AddModule mod_info.c
AddModule mod_include.c
AddModule mod_autoindex.c
AddModule mod_dir.c
AddModule mod_cgi.c
AddModule mod_asis.c
AddModule mod_imap.c
AddModule mod_actions.c
AddModule mod_speling.c
AddModule mod_userdir.c
AddModule mod_proxy.c
AddModule mod_alias.c
AddModule mod_rewrite.c
AddModule mod_access.c
AddModule mod_auth.c
AddModule mod_auth_anon.c
AddModule mod_auth_dbm.c
AddModule mod_auth_db.c
AddModule mod_digest.c
AddModule mod_cern_meta.c
AddModule mod_expires.c
AddModule mod_headers.c
AddModule mod_usertrack.c
AddModule mod_example.c
AddModule mod_unique_id.c
AddModule mod_so.c
AddModule mod_setenvif.c

# ServerType is either inetd, or standalone.

ServerType standalone

# If you are running from inetd, go to "ServerAdmin".

# Port: The port the standalone listens to. For ports < 1023, you will
# need httpd to be run as root initially.

Port 80

# HostnameLookups: Log the names of clients or just their IP numbers
# e.g. www.apache.org (on) or 204.62.129.132 (off)
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on.


HostnameLookups off

# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.

# User/Group: The name (or #number) of the user/group to run httpd as.
# On SCO (ODT 3) use User nouser and Group nogroup
# On HPUX you may not be able to use shared memory as nobody, and the
# suggested workaround is to create a user www and use that user.
# NOTE that some kernels refuse to setgid(Group) or semctl(IPC_SET)
# when the value of (unsigned)Group is above 60000;
# don't use Group nobody on these systems!


User nobody
Group nobody

# ServerAdmin: Your address, where problems with the server should be
# e-mailed.


# ServerAdmin root@localhost

ServerAdmin webmastor@yos.lint.ne.jp good.gif (1517 ツバツイツト)  管理者のemailアドレス

# ServerRoot: The directory the server's config, error, and log files
# are kept in.
# NOTE! If you intend to place this on a NFS (or otherwise network)
# mounted filesystem then please read the LockFile documentation,
# you will save yourself a lot of trouble.


ServerRoot "/home/httpd/html"

# BindAddress: You can support virtual hosts with this option. This option
# is used to tell the server which IP address to listen to. It can either
# contain "*", an IP address, or a fully qualified Internet domain name.
# See also the VirtualHost directive.

#BindAddress *

# ErrorLog: The location of the error log file. If this does not start
# with /, ServerRoot is prepended to it.

ErrorLog /var/log/httpd/error_log

# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.


LogLevel warn

# The following directives define some format nicknames for use with
# a CustomLog directive (see below).


LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

# The location of the access logfile (Common Logfile Format).
# If this does not start with /, ServerRoot is prepended to it.


CustomLog /var/log/httpd/access_log common

# If you would like to have an agent and referer logfile uncomment the
# following directives.


CustomLog /var/log/httpd/referer_log referer
CustomLog /var/log/httpd/agent_log agent

# If you prefer a single logfile with access, agent and referer information
# (Combined Logfile Format) you can use the following directive.


#CustomLog /var/log/httpd/access_log combined

# PidFile: The file the server should log its pid to

PidFile /var/run/httpd.pid

# ScoreBoardFile: File used to store internal server process information.
# Not all architectures require this. But if yours does (you'll know because
# this file is created when you run Apache) then you *must* ensure that
# no two invocations of Apache share the same scoreboard file.

ScoreBoardFile /var/run/apache_runtime_status

# The LockFile directive sets the path to the lockfile used when Apache
# is compiled with either USE_FCNTL_SERIALIZED_ACCEPT or
# USE_FLOCK_SERIALIZED_ACCEPT. This directive should normally be left at
# its default value. The main reason for changing it is if the logs
# directory is NFS mounted, since the lockfile MUST BE STORED ON A LOCAL
# DISK. The PID of the main server process is automatically appended to
# the filename.
#
#LockFile /var/run/httpd.lock

# ExtendedStatus controls whether Apache will generate "full" status
# information (ExtendedStatus On) or just basic information (ExtendedStatus
# Off) when the server-status Handler is called. The default is Off.
#

ExtendedStatus On

# ServerName allows you to set a host name which is sent back to clients for
# your server if it's different than the one the program would get (i.e. use
# "www" instead of the host's real name).
#
# Note: You cannot just invent host names and hope they work. The name you
# define here must be a valid DNS name for your host. If you don't understand
# this, ask your network administrator.
# If your host doesn't have a registered DNS name, enter its IP address here.
# You will have to access it by its address (e.g., http://123.45.67.89)
# anyway, and this will make redirections work in a sensible way.

#ServerName servidor.pht.co.jp

# Optionally add a line containing the server version and virtual host
# name to server-generated pages (error documents, ftp directory listings,
# mod_status and mod_info output etc., but not SSI generated documents).
# Set to "EMail" to also include a mailto: link to the ServerAdmin.
# Set to one of: On | Off | EMail

ServerSignature on

# UseCanonicalName: (new for 1.3) With this setting turned on, whenever
# Apache needs to construct a self-referencing URL (a url that refers back
# to the server the response is coming from) it will use ServerName and
# Port to form a "canonical" name. With this setting off, Apache will
# use the hostname:port that the client supplied, when possible. This
# also affects SERVER_NAME and SERVER_PORT in CGIs.

UseCanonicalName on

# CacheNegotiatedDocs: By default, Apache sends Pragma: no-cache with each
# document that was negotiated on the basis of content. This asks proxy
# servers not to cache the document. Uncommenting the following line disables
# this behavior, and proxies will be allowed to cache the documents.

#CacheNegotiatedDocs

# Timeout: The number of seconds before receives and sends time out


Timeout 300

# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.

KeepAlive On

# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We reccomend you leave this number high, for maximum performance.


MaxKeepAliveRequests 100

# KeepAliveTimeout: Number of seconds to wait for the next request

KeepAliveTimeout 15

# Server-pool size regulation. Rather than making you guess how many
# server processes you need, Apache dynamically adapts to the load it
# sees --- that is, it tries to maintain enough server processes to
# handle the current load, plus a few spare servers to handle transient
# load spikes (e.g., multiple simultaneous requests from a single
# Netscape browser).

# It does this by periodically checking how many servers are waiting
# for a request. If there are fewer than MinSpareServers, it creates
# a new spare. If there are more than MaxSpareServers, some of the
# spares die off. These values are probably OK for most sites ---


MinSpareServers 8
MaxSpareServers 20

# Number of servers to start --- should be a reasonable ballpark figure.

StartServers 10

# Limit on total number of servers running, i.e., limit on the number
# of clients who can simultaneously connect --- if this limit is ever
# reached, clients will be LOCKED OUT, so it should NOT BE SET TOO LOW.
# It is intended mainly as a brake to keep a runaway server from taking
# Unix with it as it spirals down...


MaxClients 300

# MaxRequestsPerChild: the number of requests each child process is
# allowed to process before the child dies.
# The child will exit so as to avoid problems after prolonged use when
# Apache (and maybe the libraries it uses) leak. On most systems, this
# isn't really needed, but a few (such as Solaris) do have notable leaks
# in the libraries.


MaxRequestsPerChild 100

# Proxy Server directives. Uncomment the following line to
# enable the proxy server:


ProxyRequests On

# Enable/disable the handling of HTTP/1.1 "Via:" headers.
# ("Full" adds the server version; "Block" removes all outgoing Via: headers)
# Set to one of: Off | On | Full | Block
ProxyVia On

# To enable the cache as well, edit and uncomment the following lines:
# (no cacheing without CacheRoot)


CacheRoot /home/httpd/proxy

CacheSize 5
CacheGcInterval 4
CacheMaxExpire 24
CacheLastModifiedFactor 0.1
CacheDefaultExpire 1
#NoCache a_domain.com another_domain.edu joes.garage_sale.com

# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, in addition to the default. See also the VirtualHost command

#Listen 3000
#Listen 12.34.56.78:80

# VirtualHost: Allows the daemon to respond to requests for more than one
# server address, if your server machine is configured to accept IP packets
# for multiple addresses. This can be accomplished with the ifconfig
# alias flag, or through kernel patches like VIF.

# Any httpd.conf or srm.conf directive may go into a VirtualHost command.
# See also the BindAddress entry.

#<VirtualHost host.some_domain.com>
#ServerAdmin webmaster@host.some_domain.com
#DocumentRoot /www/docs/host.some_domain.com
#ServerName host.some_domain.com
#ErrorLog logs/host.some_domain.com-error_log
#TransferLog logs/host.some_domain.com-access_log
#</VirtualHost>

 外部からftpで書き換えてみる

ログインできるが書き込めない

以下のように、ftpでログインはできますが書き込みができません。

C:\>ftp ftp.yos.lint.ne.jp
Connected to g6200.yos.lint.ne.jp.
220 g6200.yos.lint.ne.jp FTP server (Version wu-2.4.2-VR16(1) Fri Jun 18 05:09:48 JST 1999) ready.
User (g6200.yos.lint.ne.jp:(none)): tomo
331 Password required for tomo.
Password: (password)
230 User tomo logged in.
ftp> pwd
257 "/home/tomo" is current directory.
ftp>


アクセス権を変更する

/home/httpd/html のディレクトリは、root ユーザになっています。

以下のコマンドで、tomo に変更すると、書き込みができるようになります。(これは正式ではありませんが)

# chown   tomo    /home/httpd/html
# chgrp   tomo     /home/httpd/html

To previous pageTo home pageMailing to meJump to Top of pageline.gif (927 ツバツイツト)tomo.gif (1144 ツバツイツト)
カスタム検索



このエントリーをはてなブックマークに追加