0

これらのhtaccessルールは私を夢中にさせています。私はたくさんの例とジェネレーターを試し、知識を得ました...

私のhtaccessは次のようになります

Options +FollowSymLinks
DirectoryIndex index.php

RewriteEngine On
RewriteBase /

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

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.domain.com/ [R=301,L]

RewriteRule ^location/([^/]*)\.html$ /location.php?location=$1 [R=301,L]
RewriteRule ^([^/]*)\.html$ /search.php?searching=yes&s=$1 [R=301,L]

私は取得しようとしています

http://www.domain.com       
to http://domain.com (works)

http://domain.com/index.php 
to http://domain.com (works)

すべての php 拡張機能を html ie に書き換えます

http://domain.com/location.php 
to http://domain.con/location.html (doesnt work)

http://domain.com/about.php    
to http://domain.con/about.html (doesnt work)

http://domain.com/support.php  
to http://domain.com/support.html (doesnt work)

以下の変数を書き換えます

http://domain.com/location.php?location=bedfordshire 
to http://domain.com/location/bedfordshire.html (doesnt work)

http://domain.com/search.php?searching=yes&s=langster&pmin=&daf=&search=&pmax=&dab= 
to http://domain.com/langster.html (doesnt work)

index.php、location.php、search.php などの一部のページには page やその他の変数がありますが、ワームの缶詰についてはまだ触れたくありません。

4

1 に答える 1

0
RewriteEngine On
RewriteBase /

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

RewriteRule ^index\.php$ / [R=301,L]

RewriteCond %{REQUEST_URI} ^/location\.php$
RewriteCond %{QUERY_STRING} ^location=(.+)$
RewriteRule .* /location/%1.html? [R=301,L]

RewriteCond %{REQUEST_URI} ^/search\.php$
RewriteCond %{QUERY_STRING} ^.*&s=([^&]+)
RewriteRule .* /%1.html? [R=301,L]

RewriteCond %{QUERY_STRING} =""
RewriteRule ^(.*)\.php$ /$1.html [R=301,L]

...リダイレクトされたリクエストを処理し、引数としてPHPに返すには、次のルールを使用します。

RewriteRule ^location/(.+)\.html$ /location.php?noloop=1&location=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)\.html$ /search.php?s=$1 [L]
于 2012-11-19T15:32:37.070 に答える