0

Apache と .htaccess に問題があります。私のニーズは何ですか: URL を www.mywebsite.com から rome.mywebsite.com または lasangeles.mywebsite.com に書き換えます。

スクリプトの仕組み: php スクリプトを開始し、Cookie を読み取り、値 (つまり、ローマ) を取得します。スクリプトは、パラメーターを使用してヘッダーの場所を index.php?zone=rome に送信します。.htacess クラウドは、rome.mywebsite のように URL を書き換えます。 .com

私がしたこと: - *.mywebsite.com のようなワイルドカード DNS レコード A を作成しました - 次のルールを使用しています:

RewriteCond %{HTTP_HOST} !www.mywebsite.com$ [NC]
RewriteCond %{HTTP_HOST} ^(www.)?([a-z0-9-_]+).mywebsite.com [NC]
RewriteRule (.*) %{SCRIPT_FILENAME}?zone=%2 [NC,QSA]

しかし、うまくいきません!

ここに投稿する前に、サイトを検索しましたが、すべての回答が私の問題には適していませんでした。

問題を解決するためのアイデアはありますか?

すべてに前もって感謝します

4

1 に答える 1

0
Options +FollowSymlinks
RewriteEngine on
RewriteBase /

RewriteCond %{HTTP_HOST} !^www.mywebsite.com
RewriteCond %{HTTP_HOST} ^([w]{3})?\.?([a-z0-9-]+)\.mywebsite\.com
RewriteRule ^/? /index.php?zone=%2 [QSA]

これを試してみてください。エラーが発生した場合は残りを修正してください。
例を挙げただけですが、まだテストされていません。

上記のコードが機能しない場合は、次のコードを試してください。

Options +FollowSymlinks
RewriteEngine on
RewriteBase /

RewriteCond %{HTTP_HOST} !^www.mywebsite.com
RewriteCond %{HTTP_HOST} ^([a-z0-9-]+)\.mywebsite\.com
RewriteRule ^/? /index.php?zone=%1 [QSA]

RewriteCond %{HTTP_HOST} !^www.mywebsite.com
RewriteCond %{HTTP_HOST} ^www\.([a-z0-9-]+)\.mywebsite\.com
RewriteRule ^/? /index.php?zone=%1 [QSA]
于 2013-04-01T18:04:09.263 に答える