質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

.htaccess

Apacheウェブサーバーにおいて、ディレクトリ単位で設置及び設定を行う設定ファイルを指します。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

3回答

1587閲覧

htaccessで「wwwなし」に統一したい

korokorota

総合スコア40

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

.htaccess

Apacheウェブサーバーにおいて、ディレクトリ単位で設置及び設定を行う設定ファイルを指します。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

1クリップ

投稿2019/07/10 08:15

編集2019/07/11 00:14

現状

下記記述の.htaccessをsub.test-example.co.jpの
ルートディレクトリーに設置してます。

http → https へリダイレクトはOKですが、
wwwあり → wwwなし へのリダイレクトができなくて困っています。
wwwありにすると
「この接続はプライバシーが保護されません」というアラート画面になってしまいます。

<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] RewriteCond %{HTTP_HOST} ^www.sub.test-example.co.jp$ RewriteRule (.*) https://sub.test-example.co.jp/$1 [R=301,L] </IfModule>

■Xサーバー
■無料独自SSLを使用してます

つたない説明ですみません。
どうぞよろしくお願いいたします。

エラー画面1(https://www.の場合)

イメージ説明

エラー画面2(http://www.の場合)

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2019/07/10 08:22

提示のコードは何が起きているのでしょうか(エラーとか)
korokorota

2019/07/10 08:36

mts10806様 ありがとうございます。 質問内容に、現在表示される画面のスクショ画像を添付させていただきました。 いただいたご質問の回答になりますでしょうか?
m.ts10806

2019/07/10 08:44 編集

つまりwwwなしにはリダイレクトされてないということですね。了解です。
korokorota

2019/07/10 09:00

mts10806様 回答いただきありがとうございます。 構文チェックできるサイトがあるのですね! 知らなかったので勉強になりました、ありがとうございます! 構文エラーではないということは、証明書が原因という事でしょうか? ▼過去にあったこちらの質問&回答の内容に合致しますでしょうか? https://teratail.com/questions/141377
m.ts10806

2019/07/10 09:09

んーエックスサーバーの仕様次第でしょうか・・・ 一応、下記のような記事はあるようなので、できないわけではないとは思うのですが https://ksmtk.net/xserver/ もっと簡単な記述でも実現できるようなので下記も試してみてください。 https://www.design-soup.com/https-www
korokorota

2019/07/10 10:11

mts10806様 色々とありがとうございます。 教えていただいた記述も試してみましたが 変わりませんでした・・・ でも、教えていただきありがとうございました!
thyda.eiqau

2019/07/10 12:57

httpからhttpsへのリダイレクトは動いていて、wwwありからなしへのリダイレクトが動いていないということですね。ちなみに、https://itlogs.net/htaccess-www-https/ に記載されている下記をそのままコピペすると状況変わりますか? <ifmodule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.(.*) [NC] RewriteRule ^(.*)$ https://%1%{REQUEST_URI} [R=301,L] RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] </ifmodule>
korokorota

2019/07/11 06:32

thyda.eiqau様 ありがとうございます! 記載していただいてたサイトも参照させていただきました、ありがとうございます! 教えていただいたコードをそのままコピペしてみましが、 状況は変わらずでした・・・
guest

回答3

0

自己解決

Xサーバーのマニュアルページに以下の記述がありました。
https://www.xserver.ne.jp/manual/man_order_domain_ssl.php#page03
イメージ説明

「SSL証明書のコモンネームを「www.ドメイン名」とする場合に限り、ドメイン(FQDN)のURLに加え、「wwwなし」URLであってもSSL通信が行えます。」

SSL証明書を変更する必要があるようです。
つたない説明にも関わらず、ご丁寧な回答をいただきありがとうございました!

投稿2019/07/11 07:47

korokorota

総合スコア40

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Xサーバーのマニュアルページに以下の記述がありました。
https://www.xserver.ne.jp/manual/man_order_domain_ssl.php#page03
イメージ説明

「SSL証明書のコモンネームを「www.ドメイン名」とする場合に限り、ドメイン(FQDN)のURLに加え、「wwwなし」URLであってもSSL通信が行えます。」

SSL証明書を変更する必要があるようです。
つたない説明にも関わらず、ご丁寧な回答をいただきありがとうございました!

投稿2019/07/11 07:48

korokorota

総合スコア40

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

エラー画面2を見る限り、XSERVER でのサブドメインの www ありについては、まず www.sub というサブドメインを追加する必要があると思います。サブドメイン追加後に自動的に作成される www.sub ディレクトリ配下に

<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^www.sub.test-example.co.jp$ RewriteRule ^(.*)$ https://sub.test-example.co.jp/$1 [R=301,L] </IfModule>

を置いて www なしにリダイレクトさせるようにし、sub ディレクトリ配下の .htaccess では http → https へのリダイレクトだけを書くことになるかと思います。

投稿2019/07/10 14:34

YukiYamashina

総合スコア1011

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

korokorota

2019/07/11 05:19

YukiYamashina様 ご回答いただきありがとうございます。 そうなんですね!サブドメインを別に追加する必要があるんですね。 ご教授いただきありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問