.htaccessを利用することで、Webサイトへのアクセス制限やbasic認証を行うことができます。
Webサーバーの構築では、.htaccessを有効にする設定にしていないので、このページで説明します。
①/var/www/htmlディレクトリ配下にある.htaccessを有効にする
SSHでVPSサーバーにアクセスし、root権限でhttpd.confを編集します。
[root@ ~]# vi /etc/httpd/conf/httpd.conf (httpd設定ファイルの編集)
.htaccessを有効にするには、AllowOverride None の記述部分を AllowOverride All に変更します。
<Directory "/var/www/html"> # # Possible values for the Options directive are "None", "All", # or any combination of: # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews # # Note that "MultiViews" must be named *explicitly* --- "Options All" # doesn't give it to you. # # The Options directive is both complicated and important. Please see # http://httpd.apache.org/docs/2.2/mod/core.html#options # for more information. # Options FollowSymLinks # # AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # Options FileInfo AuthConfig Limit # AllowOverride All (NoneをAllに変更) # # Controls who can get stuff from this server. # Order allow,deny Allow from all </Directory>
変更が完了したら、ファイルを保存してください。
設定を有効にするため、Apacheを再起動。
[root@ ~]# service httpd restart (Apacheの再起動)
以上の設定で、/var/www/htmlディレクトリ配下にある.htaccessは有効になります。
②その他のディレクトリ配下にある.htaccessを有効にする
上記の設定では、/var/www/htmlディレクトリ配下にある.htaccessを有効にしましたが、/var/www/htmlディレクトリ以外でウェブコンテンツを設定している場合には、そのディレクトリで.htaccessが有効になるよう設定をします。
例として、/var/www/example.netディレクトリ配下の.htaccessを有効にします。
SSHでVPSサーバーにアクセスし、root権限でhttpd.confを編集します。
[root@ ~]# vi /etc/httpd/conf/httpd.conf (httpd設定ファイルの編集)
httpd.confのファイル末尾に下記3行を追加します。
“ “内のディレクトリ指定部分は適時変更してください。
<Directory "/var/www/example.net"> AllowOverride All Order allow,deny Allow from all </Directory>
追加したら、ファイルを保存。
設定を有効にするため、Apacheを再起動。
[root@ ~]# service httpd restart (Apacheの再起動)
以上で設定したディレクトリ配下にある.htaccessが有効になります。
③.htaccessの利用について
.htaccessの設定内容によっては、ウェブサイトに支障をきたす可能性がありますので、.htaccessの設定は注意して行ってください。