我想通過在覈心PHP中使用.htaccess文件重定向將.htaccess PHP中的查詢字符串url重定向到另一個url?
到
https://exmaple.com/uploads/cms_files/GENERAL-TERMS-AND-CONDITIONS.pdf
但它不是重定向,因爲我有嗎?查詢在我的網址中,但在問題3月之後沒有關鍵值ķ。
有人可以幫助我如何在.htaccess中重定向此URL嗎?
我想通過在覈心PHP中使用.htaccess文件重定向將.htaccess PHP中的查詢字符串url重定向到另一個url?
到
https://exmaple.com/uploads/cms_files/GENERAL-TERMS-AND-CONDITIONS.pdf
但它不是重定向,因爲我有嗎?查詢在我的網址中,但在問題3月之後沒有關鍵值ķ。
有人可以幫助我如何在.htaccess中重定向此URL嗎?
直接執行你問什麼會是這樣的:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^docs/GENERAL_TERMS_AND_CONDITIONS\.pdf$
RewriteRule ^/?uploads/cms_files/GENERAL-TERMS-AND-CONDITIONS\.pdf https://example.com/uploads/cms_files/GENERAL-TERMS-AND-CONDITIONS.pdf [R=301,QSD]
這條規則將在HTTP服務器主機配置和動態配置文件(.htaccess
)同樣的工作。如果您決定使用動態配置文件,那麼您必須注意它的解釋是否已啓用(AllowOverride
指令),該文件可由http服務器進程讀取,並且它位於http內部的正確位置主機文檔文件夾。
但是,爲什麼你必須重寫呢?如果一個對象使用URL存在可要求,那麼查詢字符串可以簡單地被忽略...
而且一般提示:你應該總是喜歡在http服務器內這些規則(虛擬)主機配置,而不是使用動態配置文件(.htaccess
樣式文件)。這些文件出了名的錯誤,很難調試,他們真的放慢了服務器。只有當你無法控制主機配置(讀取:真正便宜的主機服務提供商)或者如果你有一個依賴編寫自己的重寫規則的應用程序(這是一個明顯的安全噩夢) )。
謝謝,這真的很有幫助 – BornCoder
爲什麼你要重寫呢?如果存在可以使用該URL請求的對象,則可以簡單地忽略查詢字符串... – arkascha