0

OK、私はこの mod リライトを持っています (多くの掘り下げの後に取得: http://www.dynamicdrive.com/forums/showthread.php?51923-Pretty-URLs-with-basic-mod_rewrite-and-powerful-options-in-PHP ):

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/loader.php$
RewriteCond %{REQUEST_URI} !^/loader.php/
RewriteRule ^(.*)$ loader.php/$1?%{QUERY_STRING} [L] 

サーバーの公開ウェブルートにある loader.php にすべてのトラフィックをリダイレクトします。ローダーは、それに応じて適切な php ファイルをロードします。かなり標準的なものです。

<?php
//load the definitions and functions
require_once '../www_private/functions/functions.php';

//If the user is looking for the index then the request will have been to a directory, add index.php accordingly
if ( is_dir(WEBROOT.$_SERVER['REQUEST_URI']) )
    {
        //check for a leading slash
        if ( substr($_SERVER['REQUEST_URI'], -1 == '/') )
            {
                $_SERVER['REQUEST_URI'] .= '/';
            }

        $_SERVER['REQUEST_URI'] .= 'index.php';
    }

//Now attempt to load the requested file.
require WEBROOT.$_SERVER['REQUEST_URI'];
?>

唯一の問題は、css js と画像ファイルもリダイレクトされ、多数の致命的なエラーが発生することです...

非phpファイルがこのリダイレクトをスキップできるようにmodの書き換えを変更する方法を知っている人はいますか?

また//

親の.htaccessを無視するために、画像、css、およびjsディレクトリに別の.htaccessファイルを追加するだけでよいでしょうか?

4

2 に答える 2

1

次のように、.php ファイルのみを含めてみてください。

RewriteEngine On
RewriteBase /

$ Add this line
RewriteCond %{REQUEST_URI} /\w+\.php

# Prevent loop
RewriteCond %{REQUEST_URI} !/loader\.php

RewriteRule ^(.*)$ loader.php/$1?%{QUERY_STRING} [L]
于 2012-12-22T06:51:33.050 に答える