0

私は自分のウェブサイトに Dokuwiki を使用しています。htaccess 書き換えルールについて簡単な質問があります。次の構成があります。提案は Dokuwiki ヘルプから得られます。

Options -Indexes -MultiViews +FollowSymLinks
RewriteEngine on

RewriteCond %{HTTPS} !=on
RewriteRule ^lib/exe/xmlrpc.php$      https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]

RewriteRule ^_media/(.*)              lib/exe/fetch.php?media=$1  [QSA,L]
RewriteRule ^_detail/(.*)             lib/exe/detail.php?media=$1  [QSA,L]
RewriteRule ^_export/([^/]+)/(.*)     doku.php?do=export_$1&id=$2  [QSA,L]
RewriteRule ^$                        doku.php  [L]
RewriteCond %{REQUEST_FILENAME}       !-f
RewriteCond %{REQUEST_FILENAME}       !-d
RewriteRule (.*)                      doku.php?id=$1  [QSA,L]
RewriteRule ^index.php$               doku.php

RewriteCond %{HTTP_HOST} ^mydomain.com$ [NC]
RewriteRule ^(.*)$ http://www.mydomain.com/$1 [R=301,L] 

何が起こっているのかすべてを理解していないことを認めます。大切なことは、私が欲しいということです

http://mydomain.com

に変更されます

http://www.mydomain.com

また、任意のサブドメイン。また、doku.php? リンクの最後まで。

現在、この .htaccess ファイルによる変換は次のとおりです。

[Good] www.mydomain.com --> www.mydomain.com
[Good] www.mydomain.com/mypage --> www.mydomain.com/mypage

[Bad] mydomain.com --> www.mydomain.com/doku.php
[Bad] mydomain.com/mypage --> www.mydomain.com/doku.php?id=mypage 

ほら、物事の前に www を付ければ正常に動作するように見えますが、そうしないと、書き換えルールにより適切な www が付けられますが、サイト名 (doku. php と id= の部分)。

htaccess 設定のどこが間違っていたのでしょうか?

4

1 に答える 1