0

Magento 安装在 WAMP 上并且工作正常。

站点 URL = localhost/shop <-||-> 管理员 URL = localhost/shop/index.php/admin

我将此 magento 移至 Godaddy 服务器。它不在根文件夹中。该站点位于名为“shop”的子文件夹中</p>

站点 URL = mydomain.com/shop <-||-> 管理员 URL = mydomain.com/shop/index.php/admin

前端 url 工作正常 - mydomain.com/shop/customer/account/login/

管理员 URL 不适用于包含的“index.php”。当我删除“index.php”并手动调用 url 时,它就可以工作了。

我希望我的管理员网址为http://mydomain.com/shop/admin/system_config/edit/ ....

我的配置

使用 Web 服务器重写 = 是

在.HTACCESS

RewriteBase /shop/

我该如何解决这个问题?

4

2 回答 2

1

可以在此处找到替代解决方案: 如何从管理 URL 中删除 index.php

于 2015-05-18T15:49:12.680 回答
0

要从 Magento 管理 URL 中删除 index.php,请在 Magento 文件夹的 /shop/index.php 文件顶部添加以下代码:

<?php
    function curPageURL() {
    $pageURL = 'http';
    if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
    $pageURL .= "://";
    if ($_SERVER["SERVER_PORT"] != "80") {
    $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
    } else {
    $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
    }
    return $pageURL;
    }

    $curUrl = curPageURL();
    $pos = strpos($curUrl, "index.php");

    // Note our use of ===.  Simply == would not work as expected
    // because the position of 'a' was the 0th (first) character.
    if ($pos === false) {
    //echo "The string '$findme' was not found in the string '$mystring'";
    } else {
    //echo "The string '$findme' was found in the string '$mystring'";
    //echo " and exists at position $pos";
    $newUrl = str_replace("index.php/", "", $curUrl);
    header("Location: $newUrl");
    exit;
    }
?>

享受 :)

于 2013-07-27T09:35:18.807 回答