簡體   English   中英

.htaccess php查詢字符串

[英].htaccess php query strings

當頁面由動態PHP字符串標識時,這是.htaccess ile中頁面重定向的問題。

我不確定有人可以幫我這個忙。 這可能是一個無法解決的問題。

我剛剛將一個客戶移到一個新的網站,在該網站中,待售物業位於一個子文件夾中,而待出租物業位於另一個子文件夾中。 (在舊站點上,它們都位於頂部文件夾中。)

這些頁面的標識如下:

show-property.php?prop=[number]

如果所有屬性都將進入同一子文件夾,則一條規則將覆蓋所有屬性。 但是我必須將某些屬性發送到租金子文件夾,將其他屬性發送到銷售子文件夾,具體取決於具體數量。

有60處活躍的銷售物業和77處活躍的租賃物業。

因此,我將137條單獨的規則放入舊站點的.htaccess文件中,如下所示:

Redirect 301 /show-property.php?prop=100 https://[new-domain]/**rentals**/show-property.php?prop=100

Redirect 301 /show-property.php?prop=101 https://new-domain]/**sales**/show-property.php?prop=101

毫不奇怪,它們都不起作用。

有了137個不同的頁面和2個不同的目的地,是否可以解決此問題?

您需要設置一個RewriteCondition:

RewriteCond %{REQUEST_URI} ^/show-property.php
RewriteCond %{QUERY_STRING} prop=100
RewriteRule (.*) https://[new-domain]/rentals/show-property.php?prop=100 [R=301,L]

如果有一種方法可以通過prop id告訴目標,則可以簡化它,但是我懷疑這對您而言是否正確。

只需按如下query string對它們進行分類:

 RewriteEngine On
 RewriteCond %{QUERY_STRING} ^prop\=100$
 RewriteRule ^(.*)$ https://new-domain.com/rentals/$1 [R=301,L,QSA]
 RewriteCond %{QUERY_STRING} ^prop\=101$
 RewriteRule ^(.*)$ https://new-domain.com/sales/$1 [R=301,L,QSA]

$ 1將匹配舊站點中的URI ,而QSA標志將使查詢字符串追加到新位置。

暫無
暫無

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

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