認為:
Capital = https://www.emeraldbabe.com/profile/Prabhas/347
Small = https://www.emeraldbabe.com/profile/prabhas/347
Wrong = https://www.emeraldbabe.com/profile/prabhas/347?/profile/Prabhas/347
我想重定向Capital到Small
但是當我打開Capital它時,它會重定向到WrongURL。
以下是我的 Htaccess 代碼
RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]
# Redirect URLs of the form "/index.php/<URL>" to "/<URL>"
# Also handles "/index.php" only
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^index.php(?:/(.*))?$ /$1 [R=301,L]
RewriteEngine on
ErrorDocument 404 https://www.emeraldbabe.com/
ErrorDocument 402 https://www.emeraldbabe.com/
ErrorDocument 501 https://www.emeraldbabe.com/
ErrorDocument 502 https://www.emeraldbabe.com/
ErrorDocument 401 https://www.emeraldbabe.com/
Redirect 301 /profile/Prabhas/347 /profile/prabhas/347
uj5u.com熱心網友回復:
您的 mod_aliasRedirect指令與您的前端控制器(使用 mod_rewrite 的第一條規則)沖突。Redirect始終在請求的 URL 路徑上作業,但它正在從重寫的 URL 中捕獲查詢字串。
您的規則順序錯誤,您需要使用 mod_rewrite (即。RewriteRule)來避免這種沖突。不同的 Apache 模塊獨立作業,不一定按照組態檔中指定的順序。
另外:將所有錯誤回應重定向到主頁通常對 SEO 和用戶不利。
例如:
ErrorDocument 404 https://www.example.com/
ErrorDocument 402 https://www.example.com/
ErrorDocument 501 https://www.example.com/
ErrorDocument 502 https://www.example.com/
ErrorDocument 401 https://www.example.com/
RewriteEngine on
# Correct case of URL
RewriteRule ^profile/Prabhas/347$ /profile/prabhas/347 [R=301,L]
# Redirect URLs of the form "/index.php/<URL>" to "/<URL>"
# Also handles "/index.php" only
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^index.php(?:/(.*))?$ /$1 [R=301,L]
# Front-controller
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/427111.html
