0

mod_rewrite を縁石に蹴りつけようとしています。「他人とうまく遊べない」という話。これについて私を助けることができる魔術師はいますか?

ユーザーを識別するためにワイルドカード DNS を設定しています。私はから行きたいです:

http://username.domain.com/foo/bar

に:

https://www.domain.com/qux/waldo/username/foo/bar

これは可能ですか?

私はcodeigniterで開発しており、index.phpを削除するために、.htaccessに独自のmod_rewriteディレクティブが既にあります。

これが私が持っているものです:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{HTTP_HOST} ^(www\.)?[^.]+\.idseal\.local.*$
RewriteRule (.*) /site/assign/$1

#Removes access to the system folder by users.
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]

#Checks to see if the user is attempting to access a valid file,
#such as an image or css document, if this isn't true it sends the
#request to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
4

1 に答える 1

0

最初の行は、メイン ドメイン上にあるかどうかを確認します。2 行目は、www があるかどうかに一致します。www がある場合は %1 に保持されるため、inst がある場合は変更されません。データは%2 で、問題なく書き換えられます。

これがあなたのニーズに合うとは 100% 確信が持てませんが、試してみて、それを報告してください。

RewriteEngine on

RewriteCond %{http_host} !^www.domain.com [NC]
RewriteCond %{http_host} ^(www.)?([^.]+).domain.com [NC]
RewriteRule (.*) https://www.domain.com/qux/waldo/%2/$1
于 2010-08-22T07:14:10.287 に答える