2012-07-13 24 views
2

在我的網站上有一些手冊,宣傳冊,MSDS等pdf文件的集合。下載這些文件的鏈接分散在「下載」區域,信息頁面和產品頁面。我們定期更新的宣傳冊這樣才能去更新該文件的鏈接從我需要知道如何創建一個重定向每一個頁面,舊網址:Magento自定義URL重寫不起作用

http://easypropondproducts.com/media/pdfs/EcoPondKitsBroch-MPF-109.pdf

將永久重定向到新的URL

http://easypropondproducts.com/media/pdfs/EcoPondKitsBroch-MPF-512.pdf

我曾嘗試定製URL重寫,它似乎並沒有工作,我怎麼了相應的配置: 類型:定製 ID路徑:/媒體/ PDF文件/ EcoPondKitsBroch-MPF -109.pdf 請求路徑:/media/pdfs/EcoPondKitsBroch-MPF-109.pdf 目標路徑:http://easypropondproducts.com/media/pdfs/EcoPondKitsBroch-MPF-512.pdf 重定向:永久(301)

我在做什麼錯?有沒有辦法做到這一點?

回答

1

通過使用Magentos內部URL重寫管理,您不能重寫media文件夾中的文件。

這是因爲網址指向Magentos media(或skinjs)文件夾甚至沒有在index.php到達中央入口點,但供應直接

看看Magentos根.htaccess文件:

RewriteCond %{REQUEST_URI} !^/(media|skin|js)/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteRule .* index.php [L] 

有了您的網址,第一RewriteCond是一個不匹配。該條件說「如果URL不以/media//skin//js/開頭」。

但是您的網址確實/media/開頭。因此它會將而不是重寫爲index.php,並且無法到達Magentos內部的URL重寫管理。

達到你願意,你可以在第一RewriteCond前右側插入下面一行的內容:

Redirect 301 /media/pdfs/EcoPondKitsBroch-MPF-109.pdf /media/pdfs/EcoPondKitsBroch-MPF-512.pdf 
+0

謝謝,我真的感到沮喪,但我明白爲什麼,這不是現在的工作。我嘗試了你的解決方案。 htaccess文件,但它導致了內部服務器錯誤,幸運的是我做了舊的.htaccess的備份,並能夠恢復正常。我能做些什麼? – Pat 2012-07-17 19:00:27

+0

只要在Apache配置中啓用了「mod_alias」(通常總是這樣),就可以使用「Redirect」指令。我只是在Ubuntu,RHEL和Windows下運行的幾個Magento安裝中進行了測試,並按照預期爲我插入了所有這些行。我不知道爲什麼它不應該在你的環境中工作,除了'mod_alias'被禁用,或者你沒有正確插入行。向我們展示在請求PDF的結果是內部服務器錯誤時使用的.htaccess文件可能會有所幫助。 – 2012-07-18 09:59:54

+0

這是什麼工作,我只是張貼未來重寫下現在工作的重定向,謝謝你的幫助! ##能夠重寫 選項+的FollowSymLinks RewriteEngine敘述 上 重定向301 /media/pdfs/EcoPondKitsBroch-MPF-109.pdf http://easypropondproducts.com/media/pdfs/EcoPondKitsBroch-MPF-512.pdf ##您可以將您的Magento的根文件夾 ##的相對路徑放到這裏以Web根 #RewriteBase/Magento的/ ##變通方法在CGI環境HTTP授權 ## 重寫規則* - [E = HTTP_AUTHORIZATION:%{HTTP:授權}] – Pat 2012-07-19 12:10:51