このWebサイト ひつじ帳 は、管理者がWEB関連の技術をまとめた備忘録サイトです。 Linux,CentOS,PHP,MySQL,Blogger,JavaScript,CSS について記録しています。

CentOS-7.1/Apache/設定

[ CentOS-7.1 ] [ Apache ] [ Apache SRPM ] [ Apache インストール ] [ Apache VirtualHost ]

Apache 設定

Apache 設定ファイル 編集

/etc/httpd/conf.d/httpd.conf


##■ 設定ファイルをバックアップ
[root@localhost ~]# cp -a /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.org
[root@localhost ~]#

##■ 設定ファイルを編集する
[root@localhost ~]# vi /etc/httpd/conf/httpd.conf

--------------------------------------------------
##★ サーバー名
#ServerName www.example.com:80
  ## ↓ デフォルトではコメントアウトされている為、コメントアウトを外して設定する
ServerName vm.lan:80


##★ ドキュメントルート
DocumentRoot "/var/www/html"
  ## ↓ 変更する
DocumentRoot "/home/admin/public_html"


##★ DirectoryIndex
<IfModule dir_module>
    DirectoryIndex index.html
    ## ↓ 変更する
    DirectoryIndex index.cgi index.html
</IfModule>


##★ LogFormat
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
  ## ↓ 長すぎるURI(414エラー)はログに記録しない
LogFormat "%h %l %u %t \"%!414r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined


##★ LogFormat の保存条件(LogFormatの下にでも追記する)
SetEnvIf Request_URI "^/_mem_bin/" nolog
SetEnvIf Request_URI "^/_vti_bin/" nolog
SetEnvIf Request_URI "^/c/" nolog
SetEnvIf Request_URI "^/d/" nolog
SetEnvIf Request_URI "^/msadc/" nolog
SetEnvIf Request_URI "^/MSADC/" nolog
SetEnvIf Request_URI "^/scripts/" nolog
SetEnvIf Request_URI "default\.ida" nolog
SetEnvIf Request_URI "cmd\.exe" nolog
SetEnvIf Request_URI "root\.exe" nolog
SetEnvIf Request_URI "Admin\.dll" nolog
SetEnvIf Request_URI "NULL\.IDA" nolog


##★ CustomLog
CustomLog "logs/access_log" combined
  ## ↓ 上記以外のアクセスをログに記録するように変更する
CustomLog "logs/access_log" combined env=!nolog


##★ AddHandler
#AddHandler cgi-script .cgi
  ## ↓ デフォルトではコメントアウトされている為、追記する
AddHandler cgi-script .cgi .pl


##★ AddDefaultCharset
AddDefaultCharset UTF-8
  ## ↓ コメントアウト化する
#AddDefaultCharset UTF-8


##★ 最下行に追記する
ServerTokens ProductOnly      <--★ httpヘッダーにサーバ名のみを表示
TraceEnable off      <--★ Trace メソッドを無効にする
--------------------------------------------------

##■ 保存して編集終了
:wq
[root@localhost ~]#

##■ 設定の文法をチェックする
[root@localhost ~]# apachectl configtest
Syntax OK
[root@localhost ~]#

##■ httpd 再読み込み
[root@localhost ~]# systemctl reload httpd.service
[root@localhost ~]#

/etc/httpd/conf.d/userdir.conf


##■ 設定ファイルをバックアップ
[root@localhost ~]# cp -a /etc/httpd/conf.d/userdir.conf /etc/httpd/conf.d/userdir.conf.org
[root@localhost ~]#

##■ 設定ファイルを編集する
[root@localhost ~]# vi /etc/httpd/conf.d/userdir.conf

--------------------------------------------------
#
# UserDir: The name of the directory that is appended onto a user's home
# directory if a ~user request is received.
#
# The path to the end user account 'public_html' directory must be
# accessible to the webserver userid.  This usually means that ~userid
# must have permissions of 711, ~userid/public_html must have permissions
# of 755, and documents contained therein must be world-readable.
# Otherwise, the client will only receive a "403 Forbidden" message.
#
<IfModule mod_userdir.c>
    #
    # UserDir is disabled by default since it can confirm the presence
    # of a username on the system (depending on home directory
    # permissions).
    #
    UserDir disabled

    #
    # To enable requests to /~user/ to serve the user's public_html
    # directory, remove the "UserDir disabled" line above, and uncomment
    # the following line instead:
    #
    #UserDir public_html
</IfModule>

#
# Control access to UserDir directories.  The following is an example
# for a site where these directories are restricted to read-only.
#
##★ <Directory> ~ </Directory> の範囲を変更
## ここから(変更前) ▼##
<Directory "/home/*/public_html">
    AllowOverride FileInfo AuthConfig Limit Indexes
    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
    Require method GET POST OPTIONS
</Directory>
## ここまで(変更前) ▲##

  ## ↓ 変更する

## ここから(変更後) ▼##
<Directory "/home/*/public_html">
    AllowOverride All
    Options All -Indexes
    Require all granted
    AddHandler fcgid-script .php
</Directory>
## ここまで(変更後) ▲##
--------------------------------------------------

##■ 保存して編集終了
:wq
[root@localhost ~]#

##■ 設定の文法をチェックする
[root@localhost ~]# apachectl configtest
Syntax OK
[root@localhost ~]#

##■ httpd 再読み込み
[root@localhost ~]# systemctl reload httpd.service
[root@localhost ~]#

/etc/httpd/conf.d/vhost.conf


##■ 設定ファイルを新規作成する
[root@localhost ~]# vi /etc/httpd/conf.d/vhost.conf

--------------------------------------------------
<VirtualHost _default_:80>
  ## vm.lan
  SuexecUserGroup admin admin
  ServerName vm.lan
  ServerAlias www.vm.lan
  DocumentRoot /home/admin/public_html
  FcgidWrapper /home/admin/.fast-cgi-bin/php.cgi .php
</VirtualHost>
--------------------------------------------------

##■ 保存して編集終了
:wq
[root@localhost ~]#

##■ 設定の文法をチェックする
[root@localhost ~]# apachectl configtest
Syntax OK
[root@localhost ~]#

##■ httpd 再読み込み
[root@localhost ~]# systemctl reload httpd.service
[root@localhost ~]#

/etc/httpd/conf.d/vhost_user.conf


##■ 設定ファイルを新規作成する
[root@localhost ~]# touch /etc/httpd/conf.d/vhost_user.conf
[root@localhost ~]#

/etc/httpd/conf.d/ssl.conf

  • サーバー用 自己署名証明書・秘密鍵の設定


##■ 設定ファイルをバックアップ
[root@localhost ~]# cp -a /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.org
[root@localhost ~]#

##■ 設定ファイルを編集する
[root@localhost ~]# vi /etc/httpd/conf.d/ssl.conf

--------------------------------------------------
##★ SNI の設定を追記する
SSLStrictSNIVHostCheck off


<VirtualHost _default_:443>

##★ サーバー証明書
SSLCertificateFile /etc/pki/tls/certs/localhost.crt
  ## ↓ 変更する
SSLCertificateFile /etc/pki/tls/certs/server.crt


##★ 秘密鍵
SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
  ## ↓ 変更する
SSLCertificateKeyFile /etc/pki/tls/private/server.key

</VirtualHost>
--------------------------------------------------

##■ 保存して編集終了
:wq
[root@localhost ~]#

##■ 設定の文法をチェックする
[root@localhost ~]# apachectl configtest
Syntax OK
[root@localhost ~]#

##■ httpd 再読み込み
[root@localhost ~]# systemctl reload httpd.service
[root@localhost ~]#

/etc/httpd/conf.d/welcome.conf

  • Options +Indexes が指定できなくなる為、解除する


##■ 設定ファイルをバックアップ
[root@localhost ~]# cp -a /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.conf.org
[root@localhost ~]#

##■ 設定ファイルを編集する
[root@localhost ~]# vi /etc/httpd/conf.d/welcome.conf

--------------------------------------------------
<LocationMatch "^/+$">
    Options -Indexes
    ErrorDocument 403 /.noindex.html
</LocationMatch>

  ## ↓ コメントアウトにする

#<LocationMatch "^/+$">
#    Options -Indexes
#    ErrorDocument 403 /.noindex.html
#</LocationMatch>
--------------------------------------------------
[root@localhost ~]#

##■ httpd 再読み込み
[root@localhost ~]# systemctl reload httpd.service
[root@localhost ~]#

Webmin用Apacheの設定変更


##■ 設定ファイルをバックアップ
[root@localhost ~]# cp -a /etc/webmin/apache/config /etc/webmin/apache/config.org
[root@localhost ~]#

##■ 設定ファイルを編集する
[root@localhost ~]# vi /etc/webmin/apache/config

--------------------------------------------------
##★ apacheを停止するためのコマンド
stop_cmd=service httpd stop
  ## ↓ 変更する
stop_cmd=systemctl stop httpd.service

##★ apacheを起動するためのコマンド
start_cmd=service httpd start
  ## ↓ 変更する
start_cmd=systemctl start httpd.service

##★ 設定を適用するコマンド
apply_cmd=service httpd reload
  ## ↓ 変更する
apply_cmd=systemctl reload httpd.service

##★ 仮想サーバを追加するファイル (追記する)
virt_file=/etc/httpd/conf.d/vhost_user.conf
--------------------------------------------------

##■ 保存して編集終了
:wq
[root@localhost ~]#



以上で、"Apache" の設定は、完了です。


Apache VirtualHost ]

0 件のコメント:

人気記事

このブログを検索