我一直在尝试从网址中删除“index.php”。我可以让它不显示index.php如果我在管理中将使用Web服务器重写设置为是,但我的其他商店视图(西班牙语)都有404错误。我发现关闭的事情是:http://www.magentocommerce.com/boards/viewthread/7931/P15/#t251897但没有太大的成功。
这似乎是一个简单的重写。但是我开始认为用NginX是不可能的。
答案 0 :(得分:3)
您是否尝试使用以下内容将请求重定向到index.php引导程序:
location / {
try_files $uri $uri/ /index.php?$query_string;
}
您需要将其添加到您的vhost文件并重新启动nginx才能使其正常工作
答案 1 :(得分:3)
最好的方法是使用Apache或Nginx来实现vhost配置。您不必为此更改Magento代码库。
如果您使用的是Apache,通常这是Magento .htaccess
的一部分,或者在VHost配置中复制以下代码
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
如果您使用的是Nginx,请务必将其添加到您的vhost配置中:
location / {
try_files $uri $uri/ /index.php?$query_string;
}
更改这些后,您需要重新加载各个服务器的配置。
除此之外,你需要打开:
Magento Admin > System > Config > General > Web
> Search Engines Optimization > Use Web Server Rewrites > YES