サーバでApacheのRewrite設定を行っています。
要件としてはIPアドレスで接続してきたものをすべて名前付きのURLに飛ばしたいだけです。
下記で設定してもIPアドレスでアクセスができてしまいます。
解決方法を教えていただけますでしょうか。
<VirtualHost *:443> ServerName 111.222.333.444 RewriteEngine on RewriteRule ^(.*)$ https://www.hogehoge.jp/ [R=301,L] </VirtualHost> <VirtualHost *:443> ServerName www.hogehoge.jp DocumentRoot /var/www/html SSLEngine on SSLCertificateChainFile /etc/httpd/conf.d/XXXX.jp.cer SSLCertificateFile /etc/httpd/conf.d/XXXX.crt SSLCertificateKeyFile /etc/httpd/conf.d/XXX.key Protocols h2 http/1.1 Header always set Strict-Transport-Security "max-age=63072000" <Directory /var/www/html> AllowOverride All <RequireAll> Require all granted AuthType Basic AuthName "Basic Auth" AuthUserFile /etc/httpd/conf.d/htpasswd Require valid-user </RequireAll> </Directory> </VirtualHost>
http:// でアクセスしているとか?
他にVirtualHostの設定がある場合、質問に追記してほしいです。
また、複数のVirtualHostでコントロールする方法ですが、下記サイトを参考にご自身で試行できますか。
直接urlがIPアドレス(http://***.***.***.*** 、 https://***.***.***.***)でアクセスするのを禁止する、Apache2.4
https://qiita.com/matsu_qiita/items/69888f4299e4462ac5f9
こちらのqiitaの設定でできました。ありがとうございます。
解決できてよかったです。
解決した具体的な方法を自己回答、解決済みにしていただき、今後の質問者さんへの情報となるようにしてください。
あなたの回答
tips
プレビュー