2

これが可能かどうかさえわかりませんが、解決策をどこでも探しています。私のサイトはドメイン名に関する動的な情報を生成し、ユーザーは次の形式で情報を表示できます:

http://www.mysite.com/analyze/yourdomain.com

問題は、次のように、ドメインの代わりに http:// や www、または完全な URL を入力する場合があることです。

http://www.mysite.com/analyze/http://www.yourdomain.com/this-is-a-test

私が htaccess でやりたいことは、ドメイン名を取得し、最初にリストされているような適切な URL にリダイレクトすることです。

これは、現在htaccessに持っているものです:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^mysite.com$
RewriteCond %{REQUEST_URI} !\.(xml|txt)$
RewriteRule ^(.*)$ http://www.mysite.com/review/$1 [R=301,L]

Options -MultiViews +FollowSymlinks -Indexes

RewriteEngine on
RewriteCond %{REQUEST_URI} !\.(xml|txt)$
RewriteRule ^([a-zA-Z0-9\.\-]+)$ review.php?site=$1 [L,QSA]

私が抱えている主な問題は、ドメインの削除/リダイレクトについて見つけたすべてのチュートリアルが、URL のユーザーではなく、実際のドメイン名に適用されていることです。どんな助けでも大歓迎です!

4

1 に答える 1

0

最初のルール (301 リダイレクト) のすぐ下に thie を追加してみてください:

RewriteRule ^analyze/http:/+([^/]+)/? /analyze/$1 [L,R=301]

http://www.mysite.com/analyze/http://www.yourdomain.com/this-is-a-testこれにより、 のようなリクエストがリダイレクトされますhttp://www.mysite.com/analyze/yourdomain.com

于 2012-11-05T18:45:13.803 に答える