我甚至不知道我怎么能給這個問題起個標題,但問題來了:我在這個有服務的項目上使用seo友好的網址。服務鏈接看起來像; 他們被翻譯成;另一方面,頁面在其網址末尾沒有.php擴展名,例如:或。.com/services/service-title-6.com/services.php?s=service-title-6.com/services.com/about-us實際問題出現在我處理此網站的多種顯示語言之間的切換時。我剛剛使用了一個調用的get參數,我可以將其傳遞到任何頁面,因為我在每個頁面上都有一個php文件來處理它以及其他東西。在我的導航欄上,語言更改按鈕鏈接是動態創建的,因此用戶不必離開當前頁面即可更改網站的語言。因此,如果您正在查看“關于”頁面,則鏈接是:切換到英語。這是在 php 中生成的,類似于 .lang.com/about-us?lang=en$current_url . "?lang=en"但是,當我查看帶有服務等參數的頁面時,鏈接會被 .htaccess 轉換為類似以下內容的內容: 。如您所知,第二個問號將作為參數被忽略并且不會傳遞。我需要使用 & 符號而不是問號。但是,當我只是在常規頁面上執行此操作時,我不能單獨使用 & 符號,因為它將被翻譯成:..com/services.php?s=service-title-6?lang=en.com/about-us.php&lang=en很抱歉這個問題很長,但任何幫助和想法來處理這個問題將不勝感激。謝謝。
1 回答

繁星點點滴滴
TA貢獻1803條經驗 獲得超3個贊
我通過將下一個查詢字符串附加到我的URL來修復我的問題。我不知道mod_rewrite的旗幟。QSA
這是我對服務頁面的原始規則:
RewriteRule ^services/(.*?)/?$ services.php?s=$1 [L]
我用以下代碼替換了它:
RewriteRule ^services/(.*?)/?$ services.php?s=$1&lang=$2 [L,QSA]
我不知道它是否100%可靠,但它似乎完美地滿足了我的需求,即使做了一些測試。
(感謝約瑟夫·西布勒-復職莫妮卡指導我回答一個有用的問題。
- 1 回答
- 0 關注
- 91 瀏覽
添加回答
舉報
0/150
提交
取消