从magento的url中删除Index.php

时间:2015-05-14 13:10:50

标签: php .htaccess magento magento-1.8 magento-1.9

我正在使用magento 1.8.1,我想从url中删除index.php。

为此,我做了以下事情:

系统 - >配置 - >网络 - >搜索引擎优化,选择是。

将代码放在.htaccess

                RewriteBase /
               RewriteCond %{HTTP_HOST} !^www.littlebees.com$ [NC]
              RewriteRule ^(.*)$ http://www.littlebees.com/$1 [L,R=301]
              RewriteRule ^(.*)$ /index.php/$1 [L,QSA,PT]

取消注释该行:

      RewriteBase /magento/

它正在运行,但仅适用于主页。当我点击任何类别时,结果显示在此服务器上找不到。

请帮我怎样做? 这是我的网站:mysite

3 个答案:

答案 0 :(得分:0)

你的服务器上加载了mod_rewrite吗?

还尝试添加

Options +FollowSymLinks RewriteEngine on

到.htaccess

更新:
我在这里使用CreareSeo插件中的.htaccess https://github.com/Creare/magento-htaccess/blob/master/.htaccess

答案 1 :(得分:0)

尝试以下正则表达式:

RewriteBase /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s(.*)/index.php/?([^\ \?]*) [NC]
RewriteRule ^ %1/%2 [R=301,L]

答案 2 :(得分:0)

我知道这可能已经老了,但我想我会把它写成封装。

所以无论如何我这样做了..

---------->

开始之前,请确保已启用Apache重写模块,然后按照以下步骤操作。

1)登录您的Magento管理区域,然后转到“系统”>配置>幅”。

2)导航至“不安全”和“安全”标签。确保“不安全”和“安全” - “基本网址”选项中包含您的域名,并且不要离开在URL的末尾删减。 示例:http://www.yourdomain.co.uk/

3)仍在“网络”页面上,导航至“搜索引擎优化”标签,然后选择“”下方的'使用Web服务器重写'选项。

4)再次导航到“安全”标签(如果尚未加入)并在“在前端使用安全网址”中选择“'选项。

5)否则请转到Magento网站文件夹的根目录,并将此代码用于.htaccess:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

保存.htaccess并替换原始文件。 (请确保在使用它之前备份原始.htaccess文件!!!

6)现在转到'系统&gt;缓存管理'并选择所有字段并确保在“刷新”上设置“操作”下拉菜单,然后提交。 (这当然会刷新缓存。)

----------&GT;

如果这不起作用,请按照以下额外步骤进行操作......

7)得到'系统&gt;配置&gt;网页'再次。这次查找“当前配置范围”并从下拉菜单中选择您的网站。 (这是如果它设置为默认配置)

8)确保“不安全”和“安全”字段包含与先前默认配置文件相同的域。

9)导航至“搜索引擎优化”标签,然后选择“使用Web服务器重写”部分下方的“”。

10)一旦URL相同,并且启用了重写保存该页面,然后返回并确保它们都被默认选中,然后在需要时再次保存。

11)重复步骤6.

现在你的index.php问题应该修复,一切都应该好!!!!

我希望这会有所帮助。