0

私は現在 Web アプリを開発していますが、リクエストをルーティングするための htaccess ルールを決定する際に行き詰まりました。

私はこのようなものを持ちたいです(m =モジュール、a =アクション、o =アクションのオブジェクト):

www.domain.com/m/a/o

一般的なリクエストについては、これを用意する予定です(oは空です):

www.domain.com/users/login
to: www.domain.com/index.php?m=users&a=login
www.domain.com/users/logout
to: www.domain.com/index.php?m=users&a=logout

しかし、サイト全体のルーティングについては、次のようにします。

www.domain.com/projects/show/123
to: www.domain.com/index.php?m=projects&action=show&object=123

一般的に言えば、次のようにリダイレクト用に .htaccess を設定したいルールがあります。

www.domain.com/EMPTY 
    to: www.domain.com?index.php
www.domain.com/([^-]a-z0-9) 
    to: www.domain.com?index.php?m=$1
www.domain.com/([^-]a-z0-9)/([^-]a-z0-9) 
    to: www.domain.com?index.php?m=$1&a=$2
www.domain.com/([^-]a-z0-9)/([^-]a-z0-9)/([^-]a-z0-9) 
    to: www.domain.com?index.php?m=$1&a=$2&o=$3

これを手伝ってもらえますか?

私はこのようなことを試みましたが、ドメイン自体よりも長い間失敗しました:

RewriteRule ^/([^-]a-z0-9+)$ index.php?m=$1 [L]
RewriteRule ^/([^-]a-z0-9+)/([^-]a-z0-9+)$ index.php?m=$1&a=$2 [L]
RewriteRule ^/([^-]a-z0-9+)/([^-]a-z0-9+)/([^-]a-z0-9+)$ index.php?m=$1&a=$2&o=$3 [L]
4

0 に答える 0