WEBサーバー:Apache
目次
Apacheとは
現在最も使用されているフリーのサーバーソフトウェア。
WEBページを公開するにはこの種類のアプリケーションが必要。
サーバーソフトウェアには他に、IIS(Microsoft)、lighttpd等がある。
インストール
インストール
# yum install httpd
アンインストール
#yum remove httpd
起動/終了
起動
# service httpd start
終了
# service httpd stop
再起動
# service httpd restart
起動設定
自動起動設定
# chkconfig –level 3 httpd on
自動起動設定確認
# chkconfig –list httpd
httpd 0:off 1:off 2:off 3:on 4:off 5:off 6:off
と表示されると成功。
バージョン確認
httpd -v
または
apachectl -v
設定ファイル編集
設定ファイル編集後は、
service httpd restart
が必要
場所
/etc/httpd/conf/httpd.conf
エラーページ
エラーページ等でサーバー情報を表示しない
ServerSignature On
↓
ServerSignature Off
サーバー名
#ServerName www.example.com:80
↓
ServerName office-yone.com:80
ポート番号
Listen 80
外部設定ファイル読み込み
Include (ファイルパス)
モジュール読み込み
LoadModule (モジュール名) (モジュールファイルパス)
ログ出力設定
access.log
CustmLog “logs/access.log” common
#CustmLog “logs/access.log” combined
error.log
ErrorLog “logs/error.log”
動作テスト
apachectl configtest
モジュール
LoadModule (モジュール名) (モジュールファイルパス)
mod_rewriteモジュール
URLの書き換えを行うモジュール
ユーザー(検索エンジン)からのリクエストURLを変更し別URLへリダイレクトする
アパッチは個別の機能を持つ各モジュールをアパッチサーバー起動時に読み込む
Webサーバに対する静的なURL要求→動的URLへの書き換え
(WordPressで利用)
※httpd.conf
rewrite_module読み込み
#LoadModule rewrite_module modules/mod_rewrite.so
↓
LoadModule rewrite_module modules/mod_rewrite.so
<Directory />
400~500~エラー時でも独自のページへ遷移させる場合
ErrorDocument (ステータスコード) (遷移先ページパス)
ErrorDocument 503 /maintenance.html
書き換え実行設定
RewriteEngine On
実行条件
RewriteCond (実行条件)
RewriteCond %{REQUEST_URI} !=/maintenance.html
書き換え
RewriteRule (書き換え前) (書き換え後)
RewriteRule ^old/test\.html$ new/test.html
RewriteRule ^.*$ – [R=503,L]
</Directory>
Tomcat連携
リバースプロキシ設定を行うモジュール
「プロキシサーバー/リバースプロキシ」参照
※httpd.conf
proxy_module読み込み
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
↓
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
#proxy setting
Include conf/httpd-proxy.conf
※httpd-proxy.conf
<Location />
ProxyPass ajp://localhost:8009/AppTest/
</Location>
公開ディレクトリ
<Directory “/var/www/html”>
Options Includes FollowSymLinks
AllowOverride None
</Directory>
.htaccess設定
サイト毎に設定を分ける場合に利用
.htaccessファイルを自分で作成し公開ディレクトリに配置する事で優先的に.htaccessの設定値が利用される。
WordPressにおいて、投稿名によるパーマリンク設定を行う場合には必須
AllowOverride None
↓
AllowOverride All
Options
オプション | 意味 |
---|---|
All | 全て許可 |
None | 全て不許可 |
ExecCGI | CGIを許可 |
FollowSymLinks | シンボリックリンクを許可 |
Includes | SSIを許可 |
IncludesNOEXEC | execを除くSSIを許可 |
Indexes | ファイル一覧表示を許可 |
SymLinksIfOwnerMatch | ファイル所有者に限り、シンボリックリンクを許可 |
エラー表示
php_value display_errors on
php.ini等よりこちらが優先される