簡體   English   中英

.htaccess重寫規則,用於固定模式URL的重定向

[英].htaccess rewrite rule for redirection for fixed pattern URL

我正在嘗試為博客模塊編寫.htacces重寫規則。

如果=> www.xyz.com/index.php它不應重定向任何內容

如果=> www.xyz.com/contactus.php它不應重定向任何內容

但是如果=> www.xyz.com/blogs/test-string1-and-string2
(針對博客頁面的URL模式已固定)

它應該重定向到blog_details.php?id = $ 1

我嘗試了以下規則:

RewriteCond %{HTTP_HOST} !/blog/

RewriteRule blogs/(\w+)  blog_details.php?id=$1 [NC]

這不是完美的規則。 生成站點地圖和Seo結果時會引起問題。

我想要對URL進行強力驗證,例如URL末尾的.php

博客/后用連字符(-)分隔的單詞。 然后,我可以重定向網址。

首先,您無需在此處檢查HTTP_HOST ,因為您沒有更改它。

如果這樣做,則應將其與可能的主機名(而不是可能的URL)進行比較,即

RewriteCond %{HTTP_HOST} !^www.nottherightone.tld$

要檢查,如果URL不以“ .php”結尾並且包含連字符,則應該可以

RewriteCond %{REQUEST_URI}   !.php$
RewriteRule blogs/(.*-.*)    blog_details.php?id=$1 [NC]

以下規則應為您工作:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^blogs/(.+)$ blog_details.php?id=$1 [NC,L,QSA]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM