[英]how to rewrite SEO-friendly url markep in htaccess
我正在嘗試將我的URL轉換為SEO友好URL。 我對htaccess重寫規則了解不多,URL為:
https://www.zesteve.com/search.php?loc=Guntur&q=manjunath-cake-shop
該網址應為
https://www.zesteve.com/Guntur/manjunath-cake-shop
我已經試過了:
RewriteEngine On
RewriteCond $1 ^search
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ search.php?q=$1 [L,QSA]
我得到的結果是
https://www.zesteve.com/search?loc=Guntur&q=manjunath-cake-shop
編輯
我正在使用jQuery重定向
window.location.href = 'search?loc=' + location[0] + '&q='+ search_term;
如果有任何身體尋找相同的解決方案。 這是我的答案
首先,它應該重定向並轉換為SEO友好URL
# Redirect to SEO Friendly Url
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+(?:search\.php)?\?loc=([^\s]+)&q=([^\s]+)? [NC]
RewriteRule ^ /%1/%2? [R=301]
現在設置URL
RewriteCond $1 ^
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ search.php?loc=$1&q=$2 [L,QSA]
它解決了我的問題。
https://www.zesteve.com/search.php?loc=Guntur&q=manjunath-cake-shop
上面的URL現在是
https://www.zesteve.com/Guntur/manjunath-cake-shop
我不想在URL中顯示search.php頁面
RewriteRule ^([^/]*)/([^/]*)$ /search.php?loc=$1&q=$2 [L]
在您的.htaccess
文件中使用此命令:
RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)$ /search.php?loc=$1&q=$2 [L]
它將為您提供以下URL: https://www.zesteve.com/Guntur/manjunath-cake-shop
: https://www.zesteve.com/Guntur/manjunath-cake-shop
。 只需確保在測試前清除緩存即可。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.