Regex magento index.php单主URL的htaccess重写规则?
默认情况下,Magento会侦听3个可能的url以访问主页: 谷歌不喜欢这种行为,我正试图为搜索引擎优化我的店铺。因此,我转到Magento的.htaccess文件并尝试编辑正确的规则。然而,这似乎不起作用 我尝试将第175行:Regex magento index.php单主URL的htaccess重写规则?,regex,apache,.htaccess,magento,mod-rewrite,Regex,Apache,.htaccess,Magento,Mod Rewrite,默认情况下,Magento会侦听3个可能的url以访问主页: 谷歌不喜欢这种行为,我正试图为搜索引擎优化我的店铺。因此,我转到Magento的.htaccess文件并尝试编辑正确的规则。然而,这似乎不起作用 我尝试将第175行:RewriteRule.*index.php[L]替换为: RewriteCond %{REQUEST_URI} !^/index.php/admin($|/) RewriteRule ^index.php(/(.*))? /$2 [R=301,QSA,L] 这是
RewriteRule.*index.php[L]
替换为:
RewriteCond %{REQUEST_URI} !^/index.php/admin($|/)
RewriteRule ^index.php(/(.*))? /$2 [R=301,QSA,L]
这是因为我突然想到magento的后端不喜欢这样,我正在从URL中删除index.php。它适用于根URL。但问题是我无法查看任何其他页面。全部重定向到主页
有人有什么建议吗?我也想知道为什么magento会这么做。我不知道这怎么会有用
注意:我想知道我运行的是否重要。将此规则添加为magento中的第一条规则。htaccess:
RewriteCond %{THE_REQUEST} /index\.php [NC]
RewriteRule ^(.*?)index\.php/?$ /$1 [L,R=301,NC,NE]
这将从原始URL(而不是从重写的URI)中删除
index.php
。因此保留第175行:RewriteRule.*index.php[L]
不变?是的,保持不变。只需确保上述规则是第一条规则。这适用于index.php部分,但如果我添加最后一个斜杠,则不会更改:https://www.shop.nl/index.php/
Nice 301重定向,后端也可以正常工作,谢谢。