1

私はウェブサイトのルートフォルダにそのような.htaccessを持っています:

DirectoryIndex index.php
RewriteEngine On

Options -indexes

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php

これは、インストールされているCMSによって作成されます。

たとえば、testルートフォルダにという名前のフォルダがあります。質問は次のとおりです。

  • このフォルダをグローバル(ルートhtaccess)書き換えルールから削除するにはどうすればよいですか?

  • このフォルダには独自のhtaccessがあります。私がこのようにできるようにするためにそこに何を追加するか:

   site.com/test/some-data
   --->
   site.com/test/?id=some-data
4

2 に答える 2

1

私が正しく理解していれば、ルートディレクトリの.htaccessファイルでこれを試すことができます。

Options +FollowSymlinks -MultiViews
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} !index\.php     [NC]
RewriteCond %{REQUEST_URI} !test           [NC]
RewriteRule (.*)           index.php       [L,NC]

RewriteCond %{QUERY_STRING} ^$
RewriteRule ^test/([^/]+)/? /test/?id=$1   [L,NC]

ディレクトリに別の.htaccessファイルは必要ありません/test。これだけを使用してください。

于 2013-03-05T16:04:35.847 に答える
0

テストディレクトリに別の.htaccessが必要な場合は、これで十分です。

RewriteEngine On

RewriteCond %{QUERY_STRING} !.
RewriteRule .+ ?id=$0
于 2013-03-05T18:13:58.753 に答える