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

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

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

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Q&A

解決済

2回答

1572閲覧

Apacheのmod_rewriteモジュールについて

raisan

総合スコア10

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

0グッド

0クリップ

投稿2016/09/30 08:45

編集2016/10/03 04:54

お世話になります。
表題のApacheのmod_rewriteモジュールについてですが、
以下のように動的ページを静的化したいと思い、上記のmod_rewriteを活用し、
.htaccessにて設定したいのですが、どうもうまく行きません。

例:
対象URL
http://sample.com/second/third/index.cgi?q=$1
変換希望URL
http://sample.com/second/third/$1.html

RewriteEngine On
RewriteRule ^http://sample.com/second/third/([0-9]+).html$ http://sample.com/second/third/index.cgi?q=$1

上記の記載では上手く行かず困っています。
どうぞご教示よろしくお願い致します。

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

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

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

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

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

kei344

2016/09/30 11:46

例示用ドメインはご自身で所有されていない限りexample.comを利用してください。
raisan

2016/10/03 00:18

申し訳ありません。今後example.comとさせて頂きます。
kei344

2016/10/03 04:29

質問文は修正出来ますよ?
guest

回答2

0

RewriteEngine On RewriteRule ^second/third/([0-9]+).html$ second/third/index.cgi?q=$1

サーバによってくせのようなものがあるのでしょうか。。。

そんな非科学的なことを言ってはいけません。

投稿2016/09/30 13:09

otn

総合スコア84421

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

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

raisan

2016/10/03 01:20

>非科学的なことを言ってはいけません。 そうですね。考えを改めます。
guest

0

ベストアンサー

以下のようにするとどうでしょうか。

RewriteEngine On RewriteRule ^/second/third/([0-9]+).html$ http://example.com/second/third/index.cgi?q=$1

投稿2016/09/30 10:17

編集2016/10/03 00:33
toritoritorina

総合スコア972

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

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

raisan

2016/09/30 11:22

ご回答ありがとうございます。教えて頂いたように設定しましたが動きませんでした。サーバによってくせのようなものがあるのでしょうか。。。
raisan

2016/10/03 00:17

申し訳ありません。あまりよくわかっておらず記載の仕方を間違えているようです。 可能かどうかわかりませんが、以下となるようにしたいと思っています。 http://example.com/second/third/index.cgi?q=10 上記なような当的なURLを以下のような静的なURLに見せたいと希望しています。 ↓ http://example.com/second/third/10.html お手数ですが、ご教示頂けますと幸いでございます。
toritoritorina

2016/10/03 00:30 編集

ご返信ありがとうございます。 3点確認です。 ・10.htmlなどのファイルは実際にはなく、あるように見せかけたい ・mod_rewrite等、サーバで何も設定しないと http://example.com/second/third/index.cgi?q=10 というURLでアクセスできる ・aタグのhrefや、ブラウザのURL入力欄に入力するのは以下のようなURL http://example.com/second/third/10.html 細かいですが、よろしくお願いします。
raisan

2016/10/03 00:37

こちらこそご回答ありがとうございます。 ご指摘の通り、 >10.htmlなどのファイルは実際にはなく、あるように見せかけたい はい、htmlファイルは実際にはありません。 >・mod_rewrite等、サーバで何も設定しないと http://example.com/second/third/index.cgi?q=10 というURLでアクセスできる こちらも、サーバ側で特に設定しておりませんと、上記URLにアクセス可能です。 >・aタグのhrefや、ブラウザのURL入力欄に入力するのは以下のようなURL http://example.com/second/third/10.html はい、こちらもブラウザ、hrefに指定する場合は、上記URLを希望です。 大変お手数ですが、再度ご確認頂けますと幸いでございます。
raisan

2016/10/04 00:39

なんとか解決できました。 RewriteBaseを記載したところ正常に動いきました。 色々とお世話になりました。ありがとうございます。
toritoritorina

2016/10/04 00:42

あまり力になれませんでしたが、解決したとのことで、よかったです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問