#86 アドレスバーに入力したURIはそのままに、内部的に他のディレクトリにアクセスする方法
何を言っとるのかわからないのかもだが、こんな構成のサーバがあるとする
何もしないと、https://www.test.co.jp/data/hoge/aaa.php とか
https://www.test.co.jp/static/piyo/ccc.png で表示されるが、
途中の「data」ディレクトリとか、「static」ディレクトリをURIに表示させたくない。
そこで、chatGPTさんに次のように聞いてみた
(これは失敗談 成功談はページ下部)
RewriteEngine On
RewriteRule ^data/(.*)$ /$1 [R=301,L]
RewriteRule ^static/(.*)$ /$1 [R=301,L]
こ、これは ただのリダイレクトやないか。。
気を取り直して、違う聞き方にしてみました(成功した)
RewriteEngine On
RewriteRule ^hoge/(.*)$ /data/hoge/$1
RewriteRule ^piyo/(.*)$ /static/piyo/$1
/hoge/aaa.php に書いた、staticなしの<img src="/piyo/img/ccc.png">も
無事に表示されました。
正規表現がわからなすぎて、時間がかかりすぎました。
プロンプトの参考↓
最初はドキュメントルート複数作れんのかとか悩んでた。。。一つだけなら下記の方法がよさそう
htaccessについて詳しく学べそう↓
正規表現ドリルで頑張るか
この記事が気に入ったらサポートをしてみませんか?