0

このチュートリアルに従って、MODx Revo 2.1.3 インストールのサブドメインを管理しました。これは、Web ルート フォルダー内の htaccess ファイルが、subdomain.mydomain.com の呼び出しを、サブドメインと同じ名前の Web ルート ディレクトリ内のフォルダー (つまり、/home/mydomain/www/subdomain) にリダイレクトするというものです。サブドメインには、ページを実行するための MODx ファイルと、それ以降のすべてのリクエストをルート フォルダーに戻すための別の htaccess が含まれています。

それのより良い部分は機能します。サイトのホームページを表示できます (MODx がその役割を果たしていることを意味します) が、css、js、画像などへのリンクが機能せず、Wayfinder および getResources パッケージが出力に失敗しているようです。images+css+js に使用されているリンクは /subdomain/assets...etc です。/assets フォルダーを直接指すリンクが必要です。ルート .htaccess はリクエストをサブドメイン フォルダーにリダイレクトするように機能しますが、フォルダー内の .htaccess は残りのリクエストのルートに戻るものを何も指し示しません。

ここに私のルート フォルダー htaccess があります。これはチュートリアルの 2 番目の部分です。

RewriteEngine On
RewriteBase /

# The Multiple subdomains part
#REDIRECT SUBDOMAIN TO SUBDIRECTORY OF SAME NAME
RewriteCond %{ENV:REDIRECT_SUBDOMAIN} =""
RewriteCond %{HTTP_HOST} ([a-z0-9][-a-z0-9]+)\.mydomain\.com\.?(:80)?$ [NC]
RewriteCond %{DOCUMENT_ROOT}/%1 -d
RewriteRule ^(.*) %1/$1 [E=SUBDOMAIN:%1,L]
RewriteRule ^ - [E=SUBDOMAIN:%{ENV:REDIRECT_SUBDOMAIN},L]

サブドメイン フォルダーの htaccess は次のとおりです。

RewriteEngine On
RewriteBase /

サイトが機能することは知っています。チュートリアルのようにまだ処理されていないサブドメインを使用してアクセスできます。これですべて揃ったので、あとはリンク リクエストを整理するだけです。誰でも助けることができますか?

4

1 に答える 1

0

いくつかの支援のおかげで、私はこの問題の解決策を見つけることができました.

# The Multiple subdomains part
#REDIRECT SUBDOMAIN TO SUBDIRECTORY OF SAME NAME
RewriteCond %{ENV:REDIRECT_SUBDOMAIN} =""
RewriteCond %{HTTP_HOST} ([a-z0-9][-a-z0-9]+)\.spitfireresources\.com\.?(:80)?$ [NC]
RewriteCond %{DOCUMENT_ROOT}/%1 -d
#RewriteCond %{REQUEST_FILENAME} !^/js
#RewriteCond %{REQUEST_FILENAME} !^/css
#RewriteCond %{REQUEST_URI} !^/assets
RewriteCond %{REQUEST_URI} !^/
RewriteRule ^(.*) %1/$1 [E=SUBDOMAIN:%1,L]
RewriteRule ^ - [E=SUBDOMAIN:%{ENV:REDIRECT_SUBDOMAIN},L]

キーラインはRewriteCond %{REQUEST_URI} !^/. それが整ったら、すべてがアクセス可能になります。コメントしてくれたみんなに感謝します。

于 2011-08-08T04:28:37.570 に答える