![](/img/trans.png)
[英]How to use .htaccess mod rewrite to redirect php url as a string?
[英].htaccess Rewrite/Redirect mod or PHP script
因此,目前我正在工作的電子商務公司正在從基於.NET的平台過渡到基於Magento PHP的網站。 我遇到的問題是,我們目前有1000個目標網頁在搜索引擎上排名良好。 我無法在新平台Magento內瀏覽所有這些頁面的301,而且我知道由於性能問題,無法將1000個靜態重定向添加到.htaccess文件中。
所以我的問題是,是否有一種方法可以在數據庫中為生成索引頁面URL的變量創建重寫或重定向規則。 如果有的話,從性能角度來看,僅使用.htaccess文件,僅使用PHP腳本還是將兩者結合使用,會更明智嗎?
以下是我們當前網址之一的示例,以及我們希望將其重定向到的示例:
當前網址/Clear_For_Life-Aquariums_Bowls-AT-70_180-AQAQ-ct.html
這是我們用於生成重寫的數據的細分;
想要重定向的URL; /清除生活水族館碗
在這里的任何幫助或建議,將不勝感激。
我不相信您可以使用mod rewrite更改大小寫或替換字符(“ _”至“-”)。
為什么您無法查看所有這些頁面301? 如果使用.NET訪問它們,那么無論您在哪里進行路由/解析url,都應該有一行代碼來進行php重定向。
我說使用htaccess,並編寫一個簡單的實用程序從301詳細信息列表中生成上述htaccess文件。
所以我的問題是,是否有一種方法可以在數據庫中為生成索引頁面URL的變量創建重寫或重定向規則。 如果有的話,從性能角度來看,僅使用.htaccess文件,僅使用PHP腳本還是將兩者結合使用,會更明智嗎?
這聽起來像是RewriteMap的工作。 您需要訪問服務器或vhost配置並創建映射。 您可以使用此映射來調用可以從數據庫中獲取內容的腳本,然后確定新URI的外觀。 RewriteMap
的最簡單用法是:
RewriteMap remap prg:/path/to/script
然后您可以簡單地執行以下操作:
RewriteRule ^(.*)$ /${remap:$1|$1} [L]
/path/to/script
將需要輸入Clear_For_Life-Aquariums_Bowls-AT-70_180-AQAQ-ct.html
,對其進行解析,然后正確輸出clear-for-life-aquariums-bowl
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.