2017-07-19 5 views
0

私は一連のjavascriptファイルを持つディレクトリを持っています。 PHPを使用してファイルの1つを作成する必要がありました。だから私はこの道をmyfile.js.phpmyfile.jsと改名し、.htaccess.htaccessはファイルが存在するかどうかに基づいて書き換えます

RewriteRule myfile\.js$ myfile.js.php 

にこのルールを追加し、JavaScriptのファイルのURLは、私は、静的なファイルを提供したときと同じようhttp://www.example.com/directory/myfile.jsまだです。

私は仕事のルールです。しかし、私はファイル名をハードコードすることに満足していません。私は、どんなfilename.jsのために要求が入ってきて、​​(注記.js.php拡張子)というファイルが存在すれば、filename.jsをfilename.js.phpに書き換えたいというルールを書いてみたいと思います。

+0

にこのルールを追加します。..は、.htaccessファイルとそれを処理しようとする愚かなようです。 –

+0

@RyanChurchill私はPHPスクリプトからJSファイルを呼び出すことはありません。 Webブラウザはhttp://www.example.com/directory/myfile.jsを要求します。 URLはどこにでもあり、変更するのは難しいです。 .htaccessを使用すると、古いURLを保持できますが、ユーザーに返すスクリプトを動的に生成できるようになりました。 – George

+0

なぜこれらの要求を処理するためのPHPファイルを作成しないでください。 handler.phpのように、ブラウザがhandler.php?jsfile = myfile.jsを要求すると、ハンドラを通してリクエストとロジックを簡単に処理できます。パスを隠しておくために、そのPHPファイル内にケースを書くことができます。それが私がそれに近づく方法です。 –

答えて

0

あなたは、PHP内のロジックを使用しない理由は、PHPスクリプトからJSファイルを呼び出す場合のhtaccess

RewriteCond $1.js.php -f 
RewriteRule ([\w\-]+)\.js$ $1.js.php [L] 
+0

ありがとう、Sreedev。このルールをトップレベルの.htaccessに入れて、サブディレクトリの.js.phpファイルを使用できますか?または、ファイルと同じディレクトリに置く必要がありますか? – George

+0

それはうまくいった。 jsファイルを含むディレクトリに配置する必要があります。 –

関連する問題