1

public_html/ に割り当てられたワイルドカード サブドメイン *.domain.com があります。

私はこのようにしたい:

たとえば、/folder1/index.php は州名 (?state=statename) に基づいています。

/folder1/folder2/index.php の場合、一意の名前 (?name=uniquename) に基づきます。

したがって、www.domain.com/folder1/index.php?state=statename は statename.domain.com になります。

www.domain.com/folder1/folder2/index.php?name=uniquename は uniquename.domain.com になります

これは私のコードです

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+folder1/index\.php\?state=([^\s&]+) [NC]
RewriteRule ^ http://%1.domain.com/? [R=301,L]

RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+folder1/folder2/index\.php\?name=([^\s&]+) [NC]
RewriteRule ^ http://%1.domain.com/? [R=301,L]

問題は、それが public_html ディレクトリにリダイレクトされることです。コードに問題はありますか?

古いコード

Options +FollowSymLinks -MultiViews

RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} !^www.domain.com$ [NC]
RewriteRule ^$ /index [L]

RewriteCond %{HTTP_HOST} !^www.domain.com$ [NC]
RewriteCond %{HTTP_HOST} ^(www.)?([^.]+).domain.com$ [NC]
RewriteRule ^(index)/?$ /$1.php?name=%2 [L,NC,QSA]

コードの説明 : ユーザーが uniquename.domain.com を入力すると、自動的に www.domain.com/index.php?name=uniquename に移動しuniquename.domain.com、URL バーは変更されません。

新しい問題の違いは、異なる状態ディレクトリがあり、ドメインが state1.uniquename.domain.com になることです。URL バーの「state1.uniquename.domain.com」も変更しないでください。

4

1 に答える 1

1

あなたのコメントに基づいています。がであることを確認DOCUMENT_ROOTしてくださいwww.domain.comstate1.domain.comstate2.domain.compublic_html

このコードを試してください:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+folder1/index\.php\?state=([^\s&]+) [NC]
RewriteRule ^ http://%1.domain.com/? [R=301,L]

RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+folder1/folder2/index\.php\?name=([^\s&]+) [NC]
RewriteRule ^ http://%1.domain.com/? [R=301,L]

RewriteCond %{REQUEST_URI} !\.(?:jpe?g|gif|bmp|png|tiff|css|js)$ [NC]
RewriteCond %{HTTP_HOST} ^([^.]+)\.([^.]+)\.domain\.com$ [NC]
RewriteRule ^ /state/%1/client/index.php?name=%2&page=%{REQUEST_URI} [L,NC]
于 2013-10-08T17:11:43.290 に答える