2017-03-26 11 views
1

私はうまくいきました。 CSS、JS、IMGを有効にしてhtaccessを使ってURLをリダイレクトして設定する最良の方法は何ですか?ベローズは私がリダイレクトしたコードです。 他のページへのリダイレクト方法htaccessを使った複数のページ

RewriteCond $1^
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ search.php?loc=$1&q=$2 [L,QSA] 


# Redirect to SEO Friendly Url search page 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+(?:search\.php)?\?loc=([^\s]+)&q=([^\s]+)? [NC] 
RewriteRule^/%1/%2? [R=301,L] 
#RewriteRule ^([^/]*)/([^/]*)$ /search.php?loc=$1&q=$2 [L] 

と私のURLは、そのが正常に私は私のURLは私がしようとしていますページ名になりました search.php

を表示したくありません

https://www.zesteve.com/Guntur/manjunath-cake-shop 

に変更

https://www.zesteve.com/search.php?loc=Guntur&q=manjunath-cake-shop 

ですベローURLを変更するには

怒鳴るコード

# Redirect to SEO Friendly Url Vendor page 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+(?:vendor\.php)?\?city=([^\s]+)&type=([^\s]+)&vname=([^\s]+)&vid=([^\s]+)? [NC] 
RewriteRule^/%1/%2/%3/%4? [R=301,L] 

RewriteCond $1^
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ vendor.php?city=$1&type=$2&vname=$3&vid=$4 [L,QSA] 

https://www.zesteve.com/Hyderabad/bakers-and-confectioners/manjunath-cake-shop/87411490256961 

から

https://www.zesteve.com/vendor.php?city=Hyderabad&type=bakers-and-confectioners&vname=manjunath-cake-shop&vid=87411490256961 

その動作していない私は、正しい方法をやっていますか?

すべてのボディは、あなたの最後の書き換えルールでは、あなたが一つの値だけをキャプチャしているが、あなたのターゲットに$1,$2,$3,$4を使ってコメント

答えて

2

を残してください理解していない場合。

これにあなたのルールを変更しない

# Redirect to SEO Friendly Url Vendor page 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+(?:vendor\.php)?\?city=([^\s&]*)&type=([^\s&]*)&vname=([^\s&]*)&vid=([^\s&]*) [NC] 
RewriteRule^/%1/%2/%3/%4? [R=301,NE,L] 

# Redirect to SEO Friendly Url search page 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+(?:search\.php)?\?loc=([^\s&]*)&q=([^\s&]*)\s [NC] 
RewriteRule^/%1/%2? [R=301,L] 

RewriteCond %{REQUEST_FILENAME} -f [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule^- [L] 

RewriteRule ^([\w-]+)/([\w-]+)/([\w-]+)/([\w-]+)/?$ vendor.php?city=$1&type=$2&vname=$3&vid=$4 [L,QSA] 

RewriteRule ^([\w-]+)/([\w-]+)/?$ /search.php?loc=$1&q=$2 [L,QSA] 
+0

以前のページへのポインティングを変更します。 URLは変更されましたが、vendor.phpはロードされません。 –

+0

私はオプションでなければならないパターンの末尾にスラッシュがあるからです。あなたはこの順序でルールを保持するように完全な.htaccessで自分の答えを更新しました。 – anubhava

+0

それは2つのURLのためだけに働くか、別のURLに同じことをしたいのですがどうすればよいですか?RewriteCond%{REQUEST_FILENAME} -f [OR] RewriteCond%{REQUEST_FILENAME} -d RewriteRule^- [L] this私にとっては新しいものでした。 –

関連する問題