【发布时间】:2015-08-25 18:29:32
【问题描述】:
我在 Magento 版本 1.9.1.0 中运行一个站点,该站点启用了 SSL。当我在刷新浏览器缓存后或在私有模式下在浏览器上打开该站点的管理面板时,它第一次显示站点的主页而不是管理登录页面,即sitename.com/admin URL 第一次自动重定向到https://sitename.com URL。
当我第一次尝试直接访问网站的内页时发生了同样的问题。
之后,当我在浏览器的地址栏中再次输入 URL 为 sitename.com/admin 时,它会打开管理员登录页面,这在下次很好(似乎缓存有效)。
我在我的 Magento 网站中使用 Login and Pay with Amazon 扩展名。因此,当我使用 Amazon 登录时,在注入凭据后,它会显示如下错误:
没有收到数据。无法加载网页,因为服务器未在 chrome 上发送任何数据。
firefox 上的安全连接失败
我在 System > configuration > General > web 下的管理面板中使用基本 URL(不安全且安全为 https://sitename.com),这似乎是对的?我对我的.htaccess 文件这部分代码有疑问。我在.htaccess 文件中使用了以下代码:
############################################
## workaround for HTTP authorization
## in CGI environment
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.sitename.com/$1 [R,L]
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
############################################
## TRACE and TRACK HTTP methods disabled to prevent XSS attacks
RewriteCond %{REQUEST_METHOD} ^TRAC[EK]
RewriteRule .* - [L,R=405]
############################################
## redirect for mobile user agents
#RewriteCond %{REQUEST_URI} !^/mobiledirectoryhere/.*$
#RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod|iemobile|opera mobile|palmos|webos|googlebot-mobile" [NC]
#RewriteRule ^(.*)$ /mobiledirectoryhere/ [L,R=302]
我的要求是:
-
网站始终以
https打开,运行良好。 -
当用户使用
www或不使用www访问站点时,站点始终以https://sitename.com打开。并避免在正常工作的 URL 中使用index.php。 -
当我在第一个或第一个旁边的任何时候访问管理面板时,它应该显示管理员登录屏幕。
-
删除登录亚马逊后发生的错误。
请帮我解决这个问题。如果需要任何其他代码,请告诉我。
【问题讨论】:
-
这是 magento 的一个已知问题,据我所知至少达到 1.8。我有一个做很多公关的网站,记者只会添加或删除 www 而不测试他们的链接,这意味着他们的深层链接最终都会重定向到主页。几年前我研究了 htaccess 修复程序,结果一无所获,尽管我知道这会伤害这些网站,但大多数 magento 开发人员都知道这一点,并且认为这没什么大不了的。我希望有人能给出一个答案,它困扰我太久了
-
如果它重定向
www.example.com/page1->example.com/page1会很好,可以使用规范 url 并有助于 share/+1 计数....但不幸的是它确实@ 987654339@ ->example.com这不好。真的希望有人找到解决方法 -
第一次总是重定向到主页。无法直接访问内页。我知道问题应该出在 htaccess 中。
-
我认为 magento 的 url 重写系统很复杂,它不仅在 htaccess 文件中,还有一个它引用的重写表。就像重写系统无法处理一样......不管是什么原因,这对许多magento网站来说都是一个问题
标签: php .htaccess magento redirect url-rewriting