Webサーバーの設定

「.htaccess」を使用許可にする設定

すべてのドメインで「.htaccess」を使用許可にする

$ sudo vim /etc/httpd/conf/httpd.conf

 

「i」キー で-INSERT-モードになり編集する。
最後列に追記する。
「AccessFileName .htaccess」はデフォルトのファイル名なので省略可。
ファイル名を変更した場合は必要。

<Directory "/var/www/html">
AllowOverride ALL
AccessFileName .htaccess ←省略可
</Directory>
「Esc」キーで-INSERT-モードを終了し「:wq」で保存し終了する。

 

1つのドメインだけ「.htaccess」を使用許可にする

$ sudo vim /etc/httpd/conf/httpd.conf

 

「i」キー で-INSERT-モードになり編集する。
わかりやすく同じドメインの後ろに追記する。

<VirtualHost xxx.xxx.xxx.xxx:80>
ServerName domain-name.com
DocumentRoot /var/www/html/domain-name.com/public_html
DirectoryIndex index.html index.php
ErrorLog /var/log/httpd/domain-name.com_error_log
CustomLog /var/log/httpd/domain-name.com_access_log combined
AddDefaultCharset UTF-8
<Directory "/var/www/html/domain-name.com/public_html">
AllowOverride All
</Directory>
</VirtualHost>
「Esc」キーで-INSERT-モードを終了し「:wq」で保存し終了する。

 

設定のテストと再起動

httpdをテストする

$ sudo service httpd configtest
Syntax OK
もし、エラーになった場合、指示に従って直す。

 

httpdを再起動して設定を反映させる

$ sudo systemctl restart httpd.service

 

「.htaccess」ファイルの作成

$ cat > /var/www/html/domain-name.com/.htaccess
# http→httpsへリダイレクト
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)user@computer$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</ifmodule>
「Ctrl + D」で入力終了する。

 

参照元情報

CentOS 7 構築・運用・管理パーフェクトガイド
CentOS 7 構築・運用・管理
パーフェクトガイド