2011-09-08 12 views
0

mod_aliasルールで作業してください:mod_aliasはmod_rewriteを

/water /local/path1/water 

対象のURL:

http://www.mysite.com/water/css/style.css 
http://www.mysite.com/water/js/java.js 

実際のURL:

http://www.mysite.com/water/css.php?src=style.css 
http://www.mysite.com/water/js.php?src=java.js 

モッズ書き換えルール:

RewriteEngine on 

RewriteCond /local/path1/water%{REQUEST_URI} !-d 
RewriteCond /local/path1/water%{REQUEST_URI} !-f 
RewriteRule ^/water/css/([^/]+)$ /local/path1/water/css.php?src=$1 [PT] 
RewriteRule ^/water/js/([^/]+)$ /local/path1/water/js.php?src=$1 [PT] 

問題:それは働いていないと私は404エラーを取得していますし、エラーは、この スクリプト/www/mysite.com/htdocs/css.phpが見つからないと言うか、できない..私はmod_aliasでの作業多くの経験を持っていない

答えて

0

1.始めるが、私します​​に書き直して間違っていると思います。mod_rewriteはURLの書き換えを行いますので、こちらもURLにする必要があります。

2./local/path1/water%{REQUEST_URI}は正しい構造であり、正しいファイルを参照しているものとします。しかし、...これらの2つの条件を最初の書き換えルールにのみ適用します。

3.私はこれらの規則が.htaccessではなく、サーバーのconfig/VirtualHostコンテキストに置かれていることを理解しています。一緒にこのすべてを取る

あなたの代わりにこれを試してみてください:

RewriteEngine on 

RewriteCond /local/path1/water%{REQUEST_URI} !-d 
RewriteCond /local/path1/water%{REQUEST_URI} !-f 
RewriteRule ^/water/css/([^/]+\.css)$ /water/css.php?src=$1 [L,PT] 

RewriteCond /local/path1/water%{REQUEST_URI} !-d 
RewriteCond /local/path1/water%{REQUEST_URI} !-f 
RewriteRule ^/water/js/([^/]+\.js)$ /water/js.php?src=$1 [L,PT]