人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

mod_rewriteについて質問です(多分)。
現在「さくらのレンタルサーバ」を利用し、独自ドメインを 『/home/ID/www/○○○』へエイリアスしています。
○○○ディレクトリ直下に△△△.phpがある時、『http://ドメイン/△△△/◇◇◇』というURLで『△△△.php?param=◇◇◇』を呼び出したいと考えています。
このような状況は実現可能でしょうか?また可能であればその為の設定を教えて下さい。
自分ではmod_rewriteを適切に設定すれば良いと考えたのですが、思うように出来ません。
どうかお知恵をお貸し下さい。

●質問者: sei4u
●カテゴリ:コンピュータ
✍キーワード:HOME http:// mod_rewrite PHP URL
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● esecua
●30ポイント

http://www.hetane.or.jp/

RewriteEngine on

RewriteOptions MaxRedirects=1

RewriteBase /○○○/

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.+)$ △△△.php?param=$1


間違っていたらごめんなさい。

◎質問者からの返答

ありがとうございます。

試してみたのですが、『No input file specified.』という結果になってしまうようです。

書き方か置く場所が問題なのでしょうか……


2 ● tezcello
●30ポイント

http://www.net-newbie.com/trans/mod_rewrite.html

Apache module mod_rewrite

mod_rewrite についての質問みたいですね。

http://japache.infoscience.co.jp/rewriteguide/

Apache URL Rewriting Guide

こんなページもあります。


http://www.hoge.com/boke/123

なアクセスの場合でテストしてみました。


RewriteEngine on

RewriteRule ^boke¥/([0-9A-Za-z]+)¥/$ uso.php?param=$1 [L]


うちのイントラネットでやってみたら、boke.php には上手く渡せなかった。

uso.php ならOKだけど。

◎質問者からの返答

ありがとうございます。

[boke]の部分を存在しない名前にすると普通に『404 Not Found』になり、実際の△△△に合わせると、やはり『No input file specified.』となってしまうようです。

頂いたURLは大変参考になりそうなので、じっくりと読んでみたいと思います。感謝。


3 ● moke3rd
●100ポイント

http://tech.bayashi.net/svr/doc/apache/mod_rewrite.html

mod_rewrite

「さくらのレンタルサーバ」ではフォルダー内のファイルを検索して

該当ファイル名を補完する機能が動いているようです。


たとえば、test.html というファイルがあった場合、拡張子なしの test のみで

アクセスできてしまいます。


僕も以前すごく苦労しました。

ファイル名と同じフォルダtest/を作ってしまうとアドレスtest/でフォルダにアクセスできず

test/index.html等としないといけないです。


で、本題。

拡張子が勝手に補完されるのであえて拡張子を記述しないでください。

気持ち悪いですがこれで動きます。


.htaccessは /home/ID/www/○○○ に置いてください。


次のように記述してみてください。

RewriteEngine on

RewriteBase /

RewriteRule ^([^/]+)/(.*)/$ $1?param=$2[L]

◎質問者からの返答

解決しました!

ありがとうございます。

拡張子が補完されるのは色々試している最中に気づいたのですが、これは盲点でした。

本当にありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ