从.htaccess中删除Magento URL中的Index.php

时间:2013-05-20 17:36:52

标签: .htaccess magento

我最近设置了一个magento商店,网址是mydomain.com/index.php/admin或mydomain.com/index.php/about-us。我想删除index.php和google搜索方法,我发现这个代码应该可行,但它没有:

<IfModule mod_rewrite.c>

############################################
## enable rewrites

    Options +FollowSymLinks
    RewriteEngine on

############################################
## you can put here your magento root folder
## path relative to web root

    RewriteBase /

############################################
## workaround for HTTP authorization
## in CGI environment

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

############################################
## always send 404 on missing files in these folders

    RewriteCond %{REQUEST_URI} !^/(media|skin|js)/

############################################
## never rewrite for existing files, directories and links

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l

############################################
## rewrite everything else to index.php

    RewriteRule .* index.php [L]

</IfModule>

感谢。

4 个答案:

答案 0 :(得分:1)

您必须确保第一次,在Apache中,(如果这就是您正在使用的)启用Mod Rewrites ...那么您可以将以下内容添加到您的.htaccess个文件。

启用Mod Rewrites

sudo a2enmod

从SSH命令行(或与主持人交谈)

htaccess的:

RewriteEngine on
RewriteRule .* index.php [L]

答案 1 :(得分:1)

你真的应该使用第二种方法让Magento强制重写规则。这是最干净的方式。它会做到这一点,在所有情况下从url中删除index.php。

答案 2 :(得分:1)

看起来你的Magento根文件夹的相对路径错误了:

## you can put here your magento root folder
## path relative to web root

RewriteBase /

答案 3 :(得分:0)

转到 Magento后端

导航至系统&gt;配置,然后在左侧边栏中网络

现在选择使用Web服务器重写

清除缓存。

完成