0

次の書き換えを成功させずに試みています。

入力した URL やサブドメインに関係なく、常に によって「処理」される必要がありますindex.php

私が行くとしましょうexample.domain.com

URL は同じですが、コンテンツは index.php のものです。

URL またはサブドメインが実際に存在するかどうかは問題ではありません。

どの例でも同じです:

other.domain.com/something

ユーザーに対して同じままである必要がありますが、index.php何を表示する必要があります。

4

2 に答える 2

1

プライマリ ドメインのルート ディレクトリにある .htaccess ファイルでこれを試すことができます ( site.com):

Options +FollowSymlinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI}  !index\.php    [NC]
RewriteRule .*              /index.php?    [L]

# If the above rule doesn't work as expected, use this rule instead:
# RewriteRule .*  http://site.com/index.php? [L]    

これは、public_html フォルダーでホストされているワイルドカードおよびアドオンのサブドメインで機能するはずです。

ルール セットは、質問のすべての要件を満たしています。

  • "No matter what URL is entered or the sub-domain" すべてをリダイレクトしますhttp://site.com/index.php

  • "it should always be processed by index.php". したがってindex.php、この回答のために、のルートディレクトリのどこかに存在する必要がありhttp://site.comます。

  • "but index.php what is what should be showed". かなり紛らわしいですが、1 つの OP コメントがそれを明確にしています。受信 URL をアドレス バーに保持します。そうでない場合は、に置き換え[L]ます[R=301,L]

  • OPが言及していないため、置換URLのスクリプト(index.php)には何も渡さないでください。

于 2013-03-02T22:54:54.997 に答える
0

.htaccess で次の行を使用できます。

RewriteEngine on
RewriteRule ^([^/\.]+)/?$ index.php [L]
于 2013-03-02T20:07:17.587 に答える