![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
いつもお世話になってます。
XAMPP1.68+Smarty環境です。
既にリリースされているシステムにテスト環境がないので、
ローカルにテスト環境を作ろうと奮闘しています。
/docment_root
┣/act ←PHPスクリプトファイル
┃┣/a
┃┃┣index.php
┃┃┗action.php
┃┣/b
┃┃┗index.php
┣/tpl ←Smartyテンプレート
┗index.php
というディレクトリ構造で、
http://example.com/a/
とアクセスすると、/act/a/index.phpに、
http://example.com/a/action
とアクセスすると、/act/a/action.phpに
アクセスできるようにするためには、何をどのように設定すればよいのでしょうか?
cakePHPでも同じ原理(だと思う)なので、mod_rewiteかなと思い、
リリースされているサーバのhttpd.confを見ているのですが、
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [QSA,L]
という記述があり、ローカルに移すのにどう直せばいいのかよくわかりません。
他に必要な情報があれば教えてください。調べます。
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
リクエストは/index.phpを経由し、その中でREQUEST_URIを元に次の/act/a/action.php等をincludeしてるのではと推測します。
そのためrewriteruleの記述が足りないのではなく、以下のような所で問題になっていないか確認した方がよさそうです。
・システムの設定ファイルに本番サーバのパスが入っている
・テスト側でmod_rewriteや.htaccessが効いていない
・ディレクトリ構造が間違っている(現在の図ですと外部から生のsmartyテンプレートが参照できそうな位置にあります)
・XAMPP用の何らかの設定が競合している(XAMPPは使わないので想像です…)
(システムとしては恐らく正しく動かないと思いますが)
質問の中の条件を満たすにはこんな感じで可能です。
.htaccessファイル用に相対パスにしています。
RewriteEngine On
RewriteRule ^([^/]+)/?$ act/$1/index.php [L]
RewriteRule ^([^/]+)/([^/]+)/?$ act/$1/$2.php [L]
No.1
- 回答日時:
http://example.com/a/actionとアクセスすると、/act/a/action.phpに
RewriteEngine on
RewriteRule ^action$ action.php [L]
これでどうでしょうか
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) .htaccessファイルの修正がこれで問題ないかどうか 1 2022/04/21 08:42
- WordPress(ワードプレス) httpからhttpsへのリダイレクト設定について 2 2022/04/17 09:49
- サーバー Laravelをレンタルサーバーにインストールするにはどうすればいいですか? 2 2022/06/29 10:17
- PHP どうして送信されないのでしょうか? 1 2022/12/09 05:23
- ホームページ作成・プログラミング Adobe DreamweaverでのサイトのFTP 2 2023/03/05 11:55
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Windows 10 指定したファイルを任意の範囲のディレクトリ内に上書き保存したい 1 2022/11/24 10:42
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- HTML・CSS 全部のアクセスを指定したページに転送させたい 2 2022/06/28 16:33
- PHP 「teratail」での回答内容がいまいちわかりません。 1 2022/09/10 05:05
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
wordpressのルートのindex.php...
-
PHP/icludeを使った相対パスの...
-
深い階層のフォルダの作成や削...
-
フォントの色を変えるには?
-
onedrive にexcelファイルをア...
-
PHPで新しいウインドウで開く命...
-
別ファイルの変数を呼び出した...
-
バッチを用いたフォルダの自動移動
-
php.ini を設定を変更すると再...
-
form actionで二つ送信先を指定...
-
phpの中でphpを書けないか
-
「@$変数」の「@の意味は?」
-
リダイレクトでPOST
-
PHPで、エラーがない場合のみ画...
-
フォームで戻った際に入力済み...
-
Subversionのリポジトリの削除
-
PHP8を使うと、大量のWarningが...
-
VBSの「MsgBox」について
-
php5.6でsimplexml_load_string...
-
VBでクラウドストレージにア...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
index.phpに入るには、どうすれ...
-
include時の頭の良いパス指定に...
-
require_onceで読み込む場合、...
-
深い階層のフォルダの作成や削...
-
サイトパスに使用しているURLを...
-
.htaccessファイルの修正がこれ...
-
1つのcakePHPで複数のサイトを...
-
[PHP] 任意のDNSでIPアドレスを...
-
phpでページ分けする方法を教え...
-
PHP Linux から Windowsへの移行
-
zendのcontrollersについて
-
ゼンド フレイムワークがどうや...
-
mod_rewite?でのリダイレクト...
-
万国博覧会
-
歴史上の人物や宗教
-
PHPファイルが、そのまま見えて...
-
SSLに設置したらディレクトリパ...
-
変数値の渡し
-
ラミネート加工について
-
__FILE__をHTMLタグ内で使う
おすすめ情報