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

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

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

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

Q&A

0回答

868閲覧

htaccessで、拡張子の無いファイル全てに.htmlを強制追加するにはどうしたら良いでしょう

noboru2019

総合スコア5

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

0グッド

1クリップ

投稿2020/01/11 09:58

編集2020/01/12 23:52

初めて質問します。Webについてです。

【問題点の概要】

現在、既存静的HTMLと新設Wordpressを併存させるサイトをXサーバーにて構築中です。
設定はうまく進行中なのですが、Google検索から当サイトのindex.html以外のページにアクセスすると表示されるページもあれば、「403」となり表示されないページもあります。

【現状】
・Xサーバーにサブドメイン追加済(eNomネームサーバーは未変更)。
・新Wordpress設置済
・Hostsを設定してアクセス、Wordpressサイトを構築中
・ランディングページは、新設Wordpressのindex.phpになるように、htaccessに追記し稼働中
・Xサーバー側でのドメインへのアクセス制限はしておりません

・拡張子が無くても表示できることをネットで学び、htaccessに以下の構文を設置中。

DefaultType text/html

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^(.*)$ $1.html

【問題】
・Google検索で出てくる当サイト関係の検索結果をクリックすると、表示されるページもあれば、「403」となるページもありますj。「403」のページのURLは、最後に「/」が付いています。URLの「/」の替わりに「.html」を追記するとページが表示されます。

【要望】
・拡張子の無いファイルを表示できるにはどのような方法をとればよろしいでしょうか。

よろしくお願いいたします。

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

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

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

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

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

dameo

2020/01/13 01:06

質問拝見したのですが、何を問題と認識しているのかよく分かりません。 (1)リクエストしたURLの話なのか?それともリダイレクトされたURLの話なのか? (2)HTTPレスポンスコードが403になるURLの話なのか?それとも404も含むのか? (3)URLが示す先の実体が存在する話なのか?それともそうでないのか? (4)URLが示す先の実体がファイル/ディレクトリの種別としてURLと合っていない話なのか?そうでないのか? (5)拡張子のないファイルというのは、実体として拡張子がないのか、それともURLとして拡張子がないのか、それともWindows上で表示が省略されているだけなのか? (6)上記前提を明確にした上で、結局何が問題なのか? 話が具体的でないので、さっぱり分かりません。 大変かもしれませんが、全てのケースを具体的に説明してください。
noboru2019

2020/01/13 10:39

質問拝見したのですが、何を問題と認識しているのかよく分かりません。 このような初心者の質問に応えてくださり、誠にありがとうございます。心より感謝いたします。 そして、すみません、何とか説明しようとしているのですが。。。今回も少しでも状況説明になればと思い、書かせていただきました。何卒、よろしくお願いいたします。 (1)リクエストしたURLの話なのか?それともリダイレクトされたURLの話なのか? ・拡張子のないhtmlのファイル名「http://sample.net/sample」をブラウザに入力すると、そのままのURLでページが表示されます ・「http://sample.net/sample」は、現在構築中のサイトの静的ファイルで、フォルダーではなく、htmlファイルです ・現在構築中のサイト(静的ファイルとWordpressの併存。同じURL「http://sample.net」ですが、ネームサーバーを書き換えておらず、hosts対応でXサーバーにアクセスして見ている)が表示されている状態で、ブラウザに「http://sample.net/sample」を入力すると「http://sample.net/sample/」と返され、Wordpress内で「404」と表示されます ・同じ状態で、Google検索を行い当該ファイル名クリックすると、「http://sample.net/sample/」と返され「404」となります。スラッシュを外し「http://sample.net/sample.html」だと、ページが表示されます ・一方「http://sample.net/sample/abc」の場合は、ページが表示されます。 (2)HTTPレスポンスコードが403になるURLの話なのか?それとも404も含むのか? その後のご報告をせず、すみません。現在、.htaccessに以下の構文を入れたところ、404だけになりました。 ・ー・ー・ー・ー・ー・ー・ー・ DirectoryIndex index.php index.html RewriteEngine On RewriteBase / # html拡張子なしでもアクセス可にする RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}.html -f RewriteRule ^(.*)$ $1.html # フォルダーでも.htmlをつける RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^(.*)$ $1.html ・ー・ー・ー・ー・ー・ー・ー・ (3)URLが示す先の実体が存在する話なのか?それともそうでないのか? 「404」となったURLのファイルは存在します。返されたURLのスラッシュを「.html」に書き換えるとページが表示されます。 (4)URLが示す先の実体がファイル/ディレクトリの種別としてURLと合っていない話なのか?そうでないのか? はい、合っていないと思います。「404」が返されるファイルは、.htmlファイルです。 (5)拡張子のないファイルというのは、実体として拡張子がないのか、それともURLとして拡張子がないのか、それともWindows上で表示が省略されているだけなのか? 拡張子のないファイルというのは、実体として拡張子があります。.htmlです。表示が省略されているファイルです。 (6)上記前提を明確にした上で、結局何が問題なのか? 話が具体的でないので、さっぱり分かりません。 私は、実体がある.htmlファイルにもかかわらず、Google検索で、省略されたファイル名にスラッシュが追加されて、404になってしまうのを回避したいと思っています。 実は、既存の静的ファイルは7,000程となり、Google検索でも上位にあるファイルがあります。サイトをリニューアルすることにより、Google検索で「404」となってしまうのは、何とか避けたいと思っています。 どうぞお力添えをいただきたく、何卒よろしくお願いいたします。 大変かもしれませんが、全てのケースを具体的に説明してください。
noboru2019

2020/01/13 11:09

追記です。何を求めているのか、についてです。 サーバーに、拡張子の無いファイル名がリクエストされたとき、サーバー側でURLの末尾に、強制的に「.html」がつくようになれば、全てのファイルが表示されるのではないかと考えました。 .htaccessに、追加した構文です。 # フォルダーでも.htmlをつける RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^(.*)$ $1.html この構文は、.htaccess の「拡張子の無いファイルに強制的にスラッシュを追加する」という例文をみながら、「!」を外して、スラッシュを「.html」に書き換えてみました。結果は、ページは表示されませんでしたが、「403」は、無くなりました。 この方向で「拡張子の無いファイルに強制的に .html を追加する」構文があるのでは、と思い、タイトルを付けさせていただいた次第です。 どうぞ、よろしくお願いいたします。
dameo

2020/01/13 11:28

最初のコメントに対するコメントです。 (1)リクエストしたURLの話なのか?それともリダイレクトされたURLの話なのか? まだ全く分かりません。まず前提として (DocumentRoot)/samle/ (DocumentRoot)/sample.html が存在しているということですか?そこの説明が必要です。(他にも疑問点があるが、まずここの説明が必要) (2)HTTPレスポンスコードが403になるURLの話なのか?それとも404も含むのか? 当初の.htaccessで言って403だけということですね。 ようすると実体が存在しないURLの話ではないということになりました。 (3)URLが示す先の実体が存在する話なのか?それともそうでないのか? URLが示す先の実体が存在する話ということになっています。 (4)URLが示す先の実体がファイル/ディレクトリの種別としてURLと合っていない話なのか?そうでないのか? 合っていないために(質問文の.htaccessで)403になったということですね。 (5)拡張子のないファイルというのは、実体として拡張子がないのか、それともURLとして拡張子がないのか、それともWindows上で表示が省略されているだけなのか? サーバ上では実体として拡張子があるということですね。 (6)上記前提を明確にした上で、結局何が問題なのか? http://sample.net/sample で質問文の.htaccessだと403になったことが問題ということですね。期待された動作は (DocumentRoot)/sample.html が200で返ることということですね? 全体的にまだまだ説明が不足しています。肝心なところが具体的でないので、ほとんど推測した上でどうしても分からないところだけ質問している状態ですよ。 2つ目のコメントについてです。 どういう意図の.htaccessかは具体的なのですぐわかります。サーバ上でのディレクトリ構成や、設定などが書かれておらず、不正解のときの現象の説明と期待している動作の説明が省かれてるので、よく分からないということです。 まずは(1)(6)で質問したことにご回答ください。 また、(1)が多分そうなのですが、全てについてどちらの状況かを明示的に書かないとわからなくなるので、.htaccessは質問文のとおりで、編集しない状態での説明にしてください。
noboru2019

2020/01/14 01:16

dameoさん、コメント誠にありがとうございます。感謝です。 ご指摘をいただき、自分が今行っていることを徐々に整理することができてきたように思います。そして、説明不足の点に気が付きました。それを説明させていただきます。 > 最初のコメントに対するコメントです。 > (1)リクエストしたURLの話なのか?それともリダイレクトされたURLの話なのか? > まだ全く分かりません。まず前提として > (DocumentRoot)/samle/ > (DocumentRoot)/sample.html > が存在しているということですか?そこの説明が必要です。(他にも疑問点があるが、ま> ずここの説明が必要) ・現在公開中のサイトと、構築中のサイトの状況をきちんと整理せずに記載していたことに気づきました。そこを分けて表現します。 ① 現在公開中のサイト: ・CMS:旧Googlesite ・独自ドメイン取得、サブドメインで運用 ・フォルダーあり ・ブラウザにフォルダーのURL「http://aaa.sample.net/sample/」、「http://aaa.sample.net/sample」をそれぞれ入力すると、どちらも入力したままのURLが返され表示される ・ブラウザにページのURL「http://aaa.sample.net/sample/abc」、「http://aaa.sample.net/sample/abc/」をそれぞれ入力すると、どちらも入力したままのURLが返され表示される ・Google検索で、該当記事名をクリックすると、フォルダーは「http://aaa.sample.net/sample」、ページは「http://aaa.sample.net/sample/abc」と返され表示される ・スラッシュの替わりに「.html」を入力すると、Googlesite内で「ページが見つかりませんでした」と返される ② 構築中のサイト(静的ファイル部分) ・CMS:無し(全て.htmlで、リンクでつながっている紙芝居) ・現在のドメイン・サブドメインを継承 ・フォルダー無し ・ブラウザにフォルダーのURL「http://aaa.sample.net/sample/」、「http://aaa.sample.net/sample」のどちらを入力しても「http://aaa.sample.net/sample/」と返され、Wordpress内で「404」表示となる ・ブラウザにページのURL「http://aaa.sample.net/sample/abc」を入力すると、「http://aaa.sample.net/sample/abc」と返され表示される ・Google検索で、該当記事名をクリックすると、フォルダーは「http://aaa.sample.net/sample/」と返され非表示となる。ページは「http://aaa.sample.net/sample/abc」と返され表示される ・スラッシュの替わりに「.html」を入力すると、「http://aaa.sample.net/sample.html」が表示される > (6)上記前提を明確にした上で、結局何が問題なのか? 【問題点】 ・現在構築中のサイトの静的ファイル「http://aaa.sample.net/sample.html」が、Google検索では「http://aaa.sample.net/sample/」と返され「404」となる > http://sample.net/sample > で質問文の.htaccessだと403になったことが問題ということですね。期待された動作は > (DocumentRoot)/sample.html > が200で返ることということですね? はい、以下の構文で # フォルダーでも.htmlをつける RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^(.*)$ $1.html 403は回避できたようですが、404が返されます。 200となることが希望です。 > 全体的にまだまだ説明が不足しています。肝心なところが具体的でないので、ほとんど推> 測した上でどうしても分からないところだけ質問している状態ですよ。 恐縮です。どうぞよろしくお願いします。 > 2つ目のコメントについてです。 > どういう意図の.htaccessかは具体的なのですぐわかります。サーバ上でのディレクトリ構成や、設定などが書かれておらず、不正解のときの現象の説明と期待している動作の説明が省かれてるので、よく分からないということです。 ありがとうございます。現在公開中のサイトと、構築中のサイトの状況についての説明が整理されていませんでした。どうぞ、ご指導よろしくお願いします。
dameo

2020/01/14 01:34

(1)についてですが、肝心の、 > まだ全く分かりません。まず前提として > (DocumentRoot)/samle/ > (DocumentRoot)/sample.html > が存在しているということですか?そこの説明が必要です。(他にも疑問点があるが、まずここの説明が必要) に対する回答がありません。まずはこれにご回答ください。 .htaccessでいじったりしているので分かると思いますが「URLと実際のファイル/ディレクトリ構成は違います」。今聞いているのはURLではなく、実際のファイル/ディレクトリ構成です。 現在公開中のサイトは、本件とは無関係なので、説明不要です。新規サイトで期待する動作・問題の動作・ファイル構成などを正確にご説明ください。 また、 > また、(1)が多分そうなのですが、全てについてどちらの状況かを明示的に書かないとわからなくなる > ので、.htaccessは質問文のとおりで、編集しない状態での説明にしてください。 と書いたとおり、可能であれば質問文の内容に.htaccessを戻した上で説明してください。 追加した状態での説明は不要という意味です。 これ以上話を散らかすべきではありません。
noboru2019

2020/01/14 02:54

早速のお返事誠にありがとうございます。返答になっていなかったようで、申し訳ありません。整理して書かせていただきます。 (1)についてですが、肝心の、 > > まだ全く分かりません。まず前提として > > (DocumentRoot)/samle/ > > (DocumentRoot)/sample.html > > が存在しているということですか?そこの説明が必要です。(他にも疑問点があるが、まずここの説明が必要) > に対する回答がありません。まずはこれにご回答ください。 > .htaccessでいじったりしているので分かると思いますが「URLと実際のファイル/ディレクトリ構成は違います」。今聞いているのはURLではなく、実際のファイル/ディレクトリ構成です。 Xサーバー上では、 sample.net(ドメイン) − public_html − aaa(サブドメイン) −  sample(フォルダ) − abc.html(ページ) となっています。やっとわかりました。つまり、 (DocumentRoot)/samle/ は存在しています。 (DocumentRoot)/sample.html は存在していません。 そして、「ディレクトリ構造になっています」が、回答になりますでしょうか。 > 現在公開中のサイトは、本件とは無関係なので、説明不要です。新規サイトで期待する動作・問題の動作・ファイル構成などを正確にご説明ください。 了解しました。 新サイトで期待する動作としては、サーバーが拡張子無しでリクエストされたときに、サーバーがページを表示してくれることです。 > また、(1)が多分そうなのですが、全てについてどちらの状況かを明示的に書かないとわからなくなるので、.htaccessは質問文のとおりで、編集しない状態での説明にしてください。 > と書いたとおり、可能であれば質問文の内容に.htaccessを戻した上で説明してください。 追加した状態での説明は不要という意味です。 これ以上話を散らかすべきではありません。 了解しました。.htaccessにフォルダに関する構文を追加する前は、薄いブルーの単独の画面で「403」が返ってきます。 いろいろお手数をおかけしてすみません。お時間をお使いいただき、本当にありがとうございます。どうぞよろしくお願いいたします。
noboru2019

2020/01/14 03:00

すみません、追記です。 サーバー上での、ファイルの構造についてです。以下のパターンがありました。 ・sample.net(ドメイン) − public_html − aaa(サブドメイン) − abc.html(ページ) ・sample.net(ドメイン) − public_html − aaa(サブドメイン) − sample(フォルダ) − abc.html(ページ) ・sample.net(ドメイン) − public_html − aaa(サブドメイン) − sample(フォルダ) − sample1(フォルダ) − abc.html(ページ) よろしくお願いいたします。
dameo

2020/01/14 03:06

> (DocumentRoot)/samle/ は存在しています。 > (DocumentRoot)/sample.html は存在していません。 了解です。 これでようやく最初の一歩が踏み出せた感じです。 では、仮にブラウザに http://sample.net/sample/ を入力したら、サーバ上のどこにある何ていう名前のファイルを表示したいのでしょうか?
noboru2019

2020/01/14 03:29

早速のお返事、ありがとうございます。お陰様でやっと最初の一歩にたどりつけました。 > では、仮にブラウザに > http://sample.net/sample/ > を入力したら、サーバ上のどこにある何ていう名前のファイルを表示したいのでしょうか? 自分でも訳がわからないのですが、 http://sample.net/sample/  はページなのです。 サーバー上では、フォルダーになっていて、その下層に .htmlがあるのですが。。。 「sample」 を表示したい、が回答になりますでしょうか。。。
noboru2019

2020/01/14 03:31

追記です。 > サーバー上では、フォルダーになっていて、その下層に .htmlがあるのですが。。。 についてです。 http://sample.net/sample/  の下層には sample.html はありません。 よろしくおねがいします。
dameo

2020/01/14 06:19

> 自分でも訳がわからないのですが、 > http://sample.net/sample/  はページなのです。 > サーバー上では、フォルダーになっていて、その下層に .htmlがあるのですが。。。 前に書いたとおり、「URLと実際のファイル/ディレクトリ構成は違います」。 以前、「・sample.net(ドメイン) − public_html − aaa(サブドメイン) − sample(フォルダ) − abc.html(ページ)」と書いて頂いたように書けませんか? また、前に書いたとおり、、「現在公開中のサイトは、本件とは無関係」なので、その話は不要です。
noboru2019

2020/01/14 08:11 編集

お返事ありがとうございます! サーバー側のフォルダーとにらめっこしたところ、これかな、と思うことがありましたので、書かせていただきます。 > では、仮にブラウザに > http://sample.net/sample/ > を入力したら、サーバ上のどこにある何ていう名前のファイルを表示したいのでしょうか? 表示したいのは、 ・sample.net(ドメイン) − public_html − aaa(サブドメイン) − sample(フォルダ) − sample.xml(ページ) でした。各フォルダーに、フォルダーと同じ名前の「.xml」ファイルがあり、これが表示したい内容でした。 本当にお時間をいただき、ありがとうございます。どうぞよろしくお願いいたします。
dameo

2020/01/14 07:58

xmlはstylesheetを紐付けることで、HTMLでレンダリングすることが可能です。 「これかな?」では分からないので、今度はブラウザから http://sample.net/sample/sample.xml を見てください。
noboru2019

2020/01/14 08:01

追記です。 ・フォルダーと同じ「.xml」ファイルがあり、・・・ は説明不足でした ・フォルダーと同じファイル名の「.xml」ファイルがあり、・・・ です。 よろしくお願いいたします。
noboru2019

2020/01/14 08:13

はい、見てみました。 > 「これかな?」では分からないので、今度はブラウザから > http://sample.net/sample/sample.xml > を見てください。 「404」が、Wordpress内で返ってきました。
dameo

2020/01/14 08:18

sample.net(ドメイン) − public_html − aaa(サブドメイン) − sample(フォルダ) − sample.xml(ページ)が存在するのに404? では同じフォルダにある別のファイル sample.net(ドメイン) − public_html − aaa(サブドメイン) − sample(フォルダ) − xxx.html(ページ) のようなものがあれば、それをブラウザで開いてもらえませんか?アドレスは、 http://sample.net/sample/xxx.html になります。
noboru2019

2020/01/14 08:29

はい、おっしゃる通りです。
dameo

2020/01/14 08:34

となると、http://sample.net/sample/sample.xml がNG(404)になる理由が、リダイレクトかどうかを調べる必要があります。 ブラウザは何をお使いですか?
dameo

2020/01/14 08:41

ではCtrl+Shift+Iを押下して、デベロッパーツールを開いてください。 上部メニューにNetworkがあるので、それを選択すると、ネットワーク上のやりとりを見ることが出来ます。 この状態で、 http://sample.net/sample/sample.xml を見ると、 Nameにsample.xmlが出てきてから、Name,Statusには何が並びますか?
noboru2019

2020/01/14 08:46

はい、これからやってみます。少々お時間をください。
noboru2019

2020/01/14 08:58

すみません、何故か大きく勘違いしていました。今気がつきました。嘘を書いていたことになります。誠に申し訳ございません。 フォルダーに1個入っている「xml」のファイル名は「posts.xml」 でした。そして「http://sample.net/sample/posts.xml」 をブラウザに入力すると、テキスト文字だけが表示されました。 以下の通りとなります。 http://sample.net/sample/ → NG(403) http://sample.net/sample/posts.xml → テキストのみ表示 http://sample.net/sample/xxx.html → OK(200) よろしくお願いいたします。
dameo

2020/01/14 09:04

では、まずはposts.xmlがHTMLにならない限り、 http://sample.net/sample/ の正解にはならないということですよね? それともposts.xmlのままで正解にできますか? 私には上記URLがどういう意図のもので、posts.xmlに何が書かれているか分からないので判断が出来ません。
noboru2019

2020/01/14 09:11

お返事誠にありがとうございます。 > では、まずはposts.xmlがHTMLにならない限り、 > http://sample.net/sample/ > の正解にはならないということですよね? はい、おっしゃる通りです。 > それともposts.xmlのままで正解にできますか? 装飾の全くないテキスト文章ですので、読者に読んでいただくには、少々心許ないです。 よろしくお願いいたします。
dameo

2020/01/14 09:16

本件は現状解決不可であることが分かったので、一旦このまま置かせてください。 postsが何者で、それをどうレンダリングすべきなのかが分かりませんが、正しい形を説明できるのであれば、別の質問を上げて、そちらでの解決をまずはオススメします。 できなければ、できる人に頼むか、諦めるか、時間をかけて勉強するかだと思います。 何はともあれ、私はここで失礼します。お役に立てず、申し訳ありませんでした。
noboru2019

2020/01/14 10:03 編集

お返事ありがとうございます。長時間に亘り、ご回答いただき、誠にありがとうございました。 貴重な dameo さんのお時間を私のために使っていただき、心より御礼申し上げます。ありがとうございました。 また、機会がありましたら、ご教授、何卒よろしくお願いします。 ちなみに、私が今取り組んでいるサイトをご紹介させていただきます。 http://portal.hokuryu.info 今後も dameo さんが多くの人々の灯台とならんことを願っています。ありがとうございました。
dameo

2020/01/14 11:20

一応見てみましたが、上記URLは旧サイトなんでしょうか? それとも新サイトなんでしょうか? 旧サイトなのであれば、メニューから「ひまわりの里」などへ飛ぶと404になってますよ? リニューアルの期限も1週間切ってますが、大丈夫なんでしょうか?
noboru2019

2020/01/14 13:20 編集

dameo さん、コメント誠にありがとうございます! 書かせていただいたURLは、現在公開中のサイトです。1月20日以降は削除します。 ありがたいアドバイスありがとうございます。全く気がついていませんでした。 Hostsを変更し確認しました。そこで、今、修正しました。ご覧いただけると思います。 適切な表現かどうか心許ありませんが、表現してみます。 Sitesuckerで全ファイルをダウンロードしました。ところが、Googlesiteでは、拡張子が付かないので、ダウンロードしたファイルは、サーバー側でメニューをクリックすると「404」が返されました。 そこで、公開中の全メニューのタブのURLに、「.html」を付与して、再度ダウンロードしました。現在のサーバー側のタブでは、指定のページに遷移できました。ただ、現存のサイトのURLが「.html」が付いているため、見ることができないのは、気づいていませんでした。ありがとうございます。 今、「.htaccess」で解決できない場合に備えて、Wordpress側の「404」メッセージに、注釈文を添え新しいサイトの静的トップページに遷移してもらうように記載しています。満点ではありませんが、次善の策としてこれしかないと思っています。 本当にいろいろありがとうございます。 dameo さんでなく、 iioさんです。心より感謝いたします。ありがとうございます。
dameo

2020/01/14 12:11

やはりその手のソフトを使っていたのですね。 旧サイトは見た感じ、200でページを表示できるケースのURLは末尾に/を付けても同じ内容で表示されるようなので、リンクのさせ方次第で、 ①http://portal.hokuryu.info/himawari でアクセスされるケースも ②http://portal.hokuryu.info/himawari/ でアクセスされるケースもありそうです。 そうなると、Sitesucker側で同一かどうか判断できないために、 ①のケースは .../himawari.html ②のケースは .../himawari/index.html などで保存されている可能性が高いと思います。 もしそうなっているのであれば、新サイトの紙芝居ケースでは、 ・/で終わるケースはindex.htmlを付加 ・拡張子なしで終わるケースは.htmlを付加(現状どおり) すれば最低限正しいURLは見ることが出来るようになる気がします。
noboru2019

2020/01/14 14:10 編集

本当に、ありがとうございます!  新しいサイトの静的ファイルは、「http://portal.hokuryu.info/index.html」から、全て読むことができます。ただ、Google検索からは、フォルダーと判断されるようなファイルは、「404」が返されてしまいます。 現在公開中のサイトは、9年間運営してきた心の集積なので、多くの人々に読み続けていただきたいと思っています。Google検索では、直ぐに遷移できませんが、ワンステップ経由してそのファイルに到達していただけるのなら、それも良いかと思っています。 それにしても、dameo さん、本当にありがとうございます。とても嬉しく、dameo さんの無償の奉仕に心より感謝いたします。ありがとうございます。
dameo

2020/01/14 12:44

了解です。読んでくださる方あってのサイトですからね。 いろいろ書きましたが、気楽に楽しんでやって頂ければと思います。それでは。
noboru2019

2020/01/14 12:52 編集

また、答えになっていませんでした。申し訳ございません。 > ①のケースは .../himawari.html > ②のケースは .../himawari/index.html サーバーにアップロードしたファイルを確かめたのですが、どちらのファイルもありませんでした。 また、himawariフォルダーには、posts.xml のファイルがありませんでした。フォルダーによって、posts.xml があったり無かったりしているようです。 どのように対応すれば一番よいのか。すみません、アドバイスいただけると、本当に嬉しいです。 一度クローズされたのに、誠にすみません。。。よろしくお願いいたします。
noboru2019

2020/01/14 12:58

dameo さん、ありがとうごさいました。何とかしたいという強い思いから、ネットの掲示板に初めて投稿しました。初めての返答が、dameoさんで、ラッキーでした。 私も、dameoさんのように、自分の時間を人のために使う人を目指したいと想います。ありがとうございます。心から感謝いたします!!!
dameo

2020/01/14 13:25

どちらもないとなると、恐らく、クローリングした際にディレクトリと一度判定されてしまった名前が、ファイルとして保存できなくて諦めた、とかだと思います。 ようは①のケースでも、拡張子を付けない方式の設定なのではないでしょうか… とはいえ、私は現実にサイト移転のためにこの手のソフトを使ったことはなく、インターネット接続に制限の多い場所でwgetを使ってマニュアルの類をまとめて落としたくらいで、詳しいわけではありません。 また、正直に言えばこの手の問答を行うのは時間がかかるので嫌いで、大半の人も同様だと思います。始めからこの手の問答をすることを前提とした質問には、対応が厳しい人も多いです。
noboru2019

2020/01/14 14:11 編集

コメントありがとうございます。厳しい質問にもかかわらず、ここまでお応えいただき、心より感謝いたします。 8年前に、Googlesite を使ってサイトを開設しましたが、多くの人々に町の魅力をお伝えできたようなので、良かったと思っています。また、新サイトに移行後、Google検索では直に遷移できませんが、サーバーにはファイルが残っているので、情報を求めている人々には、少しはお役に立てるかなと、思っています。 dameoさん、本当にありがとうございました。感謝の気持ちは、なかなか言葉に言い表せませんが、ありがとうございました。人の人生の時間を他人のために使っていただける程、ありがたいことは無いと思っています。 心より感謝いたします。ありがとうございました。
noboru2019

2020/01/14 14:15 編集

追加です。 新たに、項目を限定した質問をさせてさせていただきました。何とかしてGoogle検索でヒットして欲しいという想いからです。できましたら、100点を目指していませんので、ご回答の程よろしくお願いいたします。 ただ心配なのは、今までのように質問のピントがずれているのはないかなと。。。 .htacceseeで、URLに.(ドット)を含まない場合は末尾に.htmlを補完の構文はどのようにすればいいでしょうか https://teratail.com/questions/235094 もう少し、想うところを目指して、あがいてみたいと思います。
dameo

2020/01/14 15:35

あがいてみるつもりなら、問題点を整理し、原因を追求することが先だと思います。先にRewriteを決めることに意味はありませんよ。 私がこのサイトで問答をしている目的は、「質問の質を上げること」です。明快な質問・疑問に単純な回答、その集合こそが質問サイトの意義だと思っています。質問時点でブレていて、疑問点が明確になってないと、必ずグダグダになってしまい、仮に解決したとしても同じ問題に当たった誰かの役には立たなくなってしまいます。 先にRewriteを決めることに意味はありません。今問題になっているのは/で終わるURLの実体が何なのか?です。この話は最後にposts.xmlという中身のよく分からないXMLファイルではないか?と言われていました。ただ仮にそうだったとしても、HTMLに変換できないから正解とはならない、ということで、解決不可との判断になってましたね。 その後になって、ようやく実際のサイトを見せて頂き、私は実際のposts.xmlが何なのか分かりました。Atomです。最近はあまり使われませんが、RSSリーダーなどに渡すサイトの一部更新情報のようなものです。つまり、.../sample/の内容ではありません。一言でいうと、正解は未だ不明で見つかってすらいないのです。 正解を今あなたが分かっていない理由は、単に、 (1)Sitesuckerが保存したファイルがサイトのどのURLと対応しているか (2)Sitesuckerが保存したファイルが各リンクを書き換えているなら、どんな方法か を把握していないことが原因です。 私はMacも持ってないし、そこを調べることが出来ません。そして、私が見ることの出来ない新サイトでは、”静的ファイルは、「http://portal.hokuryu.info/index.html」から、全て読むことができます。“とのことで、であればすぐにどのファイルかは分かるはずで、そこから先の(1)(2)に対する疑問はすぐに解消するはずなのです。 繰り返しますが、先にRewriteを決めることに意味はありません。 あがいてみるつもりなら、まずは問題点を整理し、原因を追求してください。
noboru2019

2020/01/15 01:55 編集

夜分遅くにお返事をいただき、誠にありがとうございます。「質問の質を上げること」というご趣旨に感銘しました。また、原因究明ができていない、とのご指摘。痛み入ります。 もし、よろしければ、新サイトをご覧になっていただけき、助けていただけませんでしょうか。 Wordpressは構築途中でお恥ずかしい限りですがご容赦ください。また、静的サイトは、Sitesucker で保存したファイルをアップロードしたものです。 現在構築中のサイトのサーバーIPアドレスは、120.136.14.50 です。 また、参考情報かどうかわかりませんが、Googlesiteに独自ドメインがあります。編集の際には、このアドレスから入っています。 https://sites.google.com/a/hokuryu.info/portal/ 何卒、よろしくお願いいたします。
dameo

2020/01/15 09:16

助けるというのは何のことでしょうか?原因究明が難しいのであれば、何が不明なのかを言って頂かないと、何をすることもできません。私には何かをする理由もありませんが…。 また教えて頂いたIPアドレスにはhttpでアクセスしましたが、以下の中身が固定で返るだけになっているようです。いくつかのパスを試しましたが、ステータスコードのみ変わりますが、中身は同様です。 無効なURLです。 プログラム設定の反映待ちである可能性があります。 しばらく時間をおいて再度アクセスをお試しください。
noboru2019

2020/01/15 10:03

お返事いただき、誠にありがとうございます。 助けるという言葉を使ってしまいすみませんでした。「教えていただきたい」と書くべきでした。 サーバーIPアドレスですが、私は、hostsに、120.136.14.50 portal.hokuryu.info を書き込んで、構築中サイトにアクセスしています。 確かにブラウザにIPアドレスを入力したところ、同様のコードが返ってきました。 どのようにすればよいのか、わかりません。
dameo

2020/01/15 10:29 編集

HTTPのリクエストにはHostヘッダがあって、そこを見てnginxが処理を変えているのだと思います。 実際にあなたのアカウントにリクエストを渡しはしますが、返した結果を使わず、用意した固定の文面を返すように設定してあるのだと思います。X SERVERは使ってないので、設定もどういう形なのかも分かりませんが…。 つまりX SERVERの設定ですでにドメインをportal.hokuryu.infoしているのですね。 では何を教えればいいのでしょうか?
noboru2019

2020/01/15 10:40

コメントありがとうございます。 > つまりX SERVERの設定ですでにドメインをportal.hokuryu.infoしているのですね。 はい、そうです。 > では何を教えればいいのでしょうか? はい、hostsでXサーバーに接続して状態で、Google検索すると、フォルダとみなされているページは、非表示となってしまいます。現状の公開中の状態ですと、Google検索した結果には、全て表示されます。 1月19日には、DNSを書き換える予定ですが、そのときに、Google検索の結果をクリックしても、表示されない状態を懸念しています。新しいサイトにある、.htmlファイルにアクセスできるようにしたいというのが希望です。 よろしくお願いいたします。
dameo

2020/01/15 10:50

丸投げはこのサイトでは推奨されていないので、代わりにやることはできません。 https://teratail.com/help/avoid-asking なので、あくまでご自分でやられる前提で、どうしても分からず詰まった部分について、一緒に考えるくらいのつもりでいます。 まず、今まではご自分でやられているのでしょうか?
noboru2019

2020/01/15 11:14 編集

コメントありがとうございます。 > まず、今まではご自分でやられているのでしょうか? はい、サイト作りは全て自分でしてきました。 ただ、今回、htacceseeの設定が必要な局面に遭遇したようなので、先人の皆さんのアドバイスをいただければと思い、初めて投稿させていただきました。 dameoさんの人生の貴重なお時間を、みもしらぬ私のためにここまでお使いいただき、心より感謝いたします。 誠に、ありがとうございました。
dameo

2020/01/15 11:21

自分でしてきたのであれば、丸投げでなく、詰まってる部分のみの質問が出来ると思うのですが…
noboru2019

2020/01/15 11:34

コメントありがとうございます。 > 自分でしてきたのであれば、丸投げでなく、詰まってる部分のみの質問が出来ると思うのですが… すみません、「htacceseeの設定が必要な局面に遭遇したようなので、先人の皆さんのアドバイスをいただければと思い」が丸投げとご指摘いただくと、私は質問することができなくなります。 本当にありがとうございました。心より感謝いたします。
dameo

2020/01/15 11:55

htacceseeの設定が必要な局面に遭遇し、ここを見てこのように設定してみたが、どうしてもうまく動かず原因が分からない、という話なら、(可能であればうまく動かない条件と)その現象の説明で、お手伝いできると思います。 しかしながら、htacceseeの設定が必要な局面に遭遇し、全く分からないから代わりに全部やってほしい/全部教えて欲しい、は丸投げという判断になってしまいます。 あくまで主体は質問者ご本人なのです。 一応調べた結果だけ伝えておくと、 > ①http://portal.hokuryu.info/himawari > でアクセスされるケースも > ②http://portal.hokuryu.info/himawari/ > でアクセスされるケースもありそうです。 > そうなると、Sitesucker側で同一かどうか判断できないために、 > ①のケースは > .../himawari.html > ②のケースは > .../himawari/index.html > などで保存されている可能性が高いと思います。 は想像したとおりでした。 ただし、/を除けば、②のケースは数がかなり少なそうです。99%以上は①のケースに該当します。 なのでGoogle検索からのアクセスでは、①のケースだけ救えればいいと思います。 Googleからアクセスされて、403になってしまう原因は、 http://portal.hokuryu.info/himawari がディレクトリであるため、Rewriteなしだと、 http://portal.hokuryu.info/himawari/ にリダイレクトされてしまうからです。 現状の.htaccess設定でも、ディレクトリであるため条件に該当せず、同様の現象となります。 質問しないのであれば、以上で終了です。失礼しました。
noboru2019

2020/01/15 12:15

コメント、誠にありがとうございます。また、ご検討いただきありがとうございます。 > なのでGoogle検索からのアクセスでは、①のケースだけ救えればいいと思います。 > Googleからアクセスされて、403になってしまう原因は、 > http://portal.hokuryu.info/himawari > がディレクトリであるため、Rewriteなしだと、 > http://portal.hokuryu.info/himawari/ > にリダイレクトされてしまうからです。 はい、おっしゃる通りだと思います。 是非、これを解消するための、.htaccess の構文を教えていただきたのです。すみません、丸投げかもしれませんが、教えていただけますと、誠に嬉しいです。 人口1,800人弱の北海道の小さな町の魅力を、多くの人々におつたえすることが叶います。そして、町の魅力の情報に接する人々で、感動された方のご意見が町民に伝わり、町民が明るく元気に誇りをもつことができると信じています。町民の幸せに繋がると信じています。 どうか、構文を教えていただきたく、何卒よろしくお願いいたします!
dameo

2020/01/15 12:31

言い方や理由を変えてもダメですよ。私には何の関係もありません。 どういう状態にしてどういう設定でどうしたいんだけど、こういう設定にこうしたらこうなっちゃって、それだとここに問題があって、この部分をどうしたらいいのか分かりません、という筋を立ててください。 以前お話しましたが、私の目的は質問の質を上げることです。あなたの町のホームページを作ることではありません。
noboru2019

2020/01/15 12:39 編集

コメントありがとうございます。 どうも、私の勉強不足ゆえ、dameo さんの貴重な趣旨を理解できないようです。 もっと勉強して、また、質問させたいただきます。誠にありがとうございました。
dameo

2020/01/15 13:45

例えば↓みたいな感じです。 ■実現したいこと サーバー上には (DocumentRoot)/dir/ (DocumentRoot)/dir.html はあるが、 (DocumentRoot)/dir/index.html はない(例外的にあるディレクトリもある) http://domain/dir http://domain/dir/ というリクエストを受けたとき、レスポンスで (DocumentRoot)/dir.html を返したい ※dir/とdir.htmlの組は万単位で存在し、他にもディレクトリやファイルは存在する ※dir/index.*については後で考慮するので、当面無視する ※ただし/と/index.htmlへのリクエストについては、.htaccessで変更してはならない ■実現手段 以下の.htaccessを用意し、(DocumentRoot)に設置した。 DefaultType text/html RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}.html -f RewriteRule ^(.*)$ $1.html ■問題 以下のURLに対して、403が発生して困っている。 http://domain/dir -> 301でhttp://domain/dir/(↓)にリダイレクト http://domain/dir/ -> 403 ■試したこと (1).htaccessに以下を追記した。 RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^(.*)$ $1.html →403が404になるだけだった。 ■質問 .htaccessを修正することで403を回避し、200でdir.htmlを返す方法を教えて欲しい ■補足 レンタルサーバ: X SERVER WEBサーバー: nginx
noboru2019

2020/01/16 07:57

dameoさん、質問の整理、誠にありがとうございます。 なるほど! 唸ります。このように整理すると、格段にわかり易いです。このような質問をすることで、掲示板がレベルアップするのですね。大変、勉強になりました。ありがとうございます。心より感謝いたします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問