所有我对我的Magento安装的URL需要他们的index.php,如:
http://example.com/index.php/admin/
http://example.com/index.php/customer/account/login/
问题是,该系统在默认情况下链接的网址一样
http://example.com/admin/
http://example.com/customer/account/login/
看起来更漂亮呢。 我想这是在.htaccess重写的问题,但由于在过去与修补给了我500秒,我想先问你们。
更改SEO设置,刷新配置高速缓存,并重新编制URL不工作的建议在这里 。
Answer 1:
这可能是老了,但我也不妨写什么我学到了下来。 所以,无论如何,我就是这么做的。
---------->
在开始之前,请确保在Apache重写模块被启用,然后按照下面的步骤。
1)登录到您的Magento管理区域,然后进入系统>配置>网络 。
2)导航到不安全和安全标签。 确保无抵押和安全 - 基地址选项中有你它的域名,不要离开前在网址的结尾削减掉。 例如: http://www.yourdomain.co.uk/
3)尽管仍然在Web页面上,导航到搜索引擎优化选项卡,选择YES 使用的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)现在去系统>缓存管理和选择所有字段,并确保下拉菜单上刷新设置操作 ,然后提交。 (中 - 当然,这将刷新缓存。)
---------->
如果没有工作,请按以下额外的步骤。
7)进入系统>配置>网页一次。 这一次查找当前配置范围 ,并从下拉菜单中选择您的网站。 (当然,这是,它被设置为默认的配置)
8)确保不安全和安全领域包含相同的域以前的默认配置文件。
9)导航到搜索引擎优化选项卡,选择是 使用服务器网址重写部分下方。
10)当URL是相同的,并且重写被保存该页面启用,然后回去,并确保它们都是被选中为默认值,然后根据需要再次保存。
11)重复步骤6。
现在你的index.php的问题应该是固定的,所有应该很好!
我希望这个帮助能祝你好运。
Answer 2:
按照下面的步骤,它会帮助你。
第1步:进入到你的网站的根文件夹,你可以找到.htaccess
文件存在。 用文本编辑器打开它,找到行#RewriteBase /magento/
。 只是更换#RewriteBase /
取出只是“Magento的/”
第2步:然后转到您的管理面板,并启用重复写(对于使用服务器网址重写设置是 )。 你可以在系统 - >配置 - >基于Web>搜索引擎优化找到它。
第3步:然后进入高速缓存管理页面(系统缓存管理)和刷新缓存并刷新检查站点。
Answer 3:
您必须启用Apache的mod_rewrite的,以使清洁的网址工作
如果mod_rewrite的是不是在的phpinfo你必须安装它
sudo a2enmod rewrite
sudo apache2ctl -l
您需要替换的发生AllowOverride none
到AllowOverride all
(在/ etc / apache2的/网站启用/ 000-默认)
重启Apache
sudo service apache2 restart
在Magento的管理员去System > Configuration > Web > search engine Optimization
和更改“ Use Web Server Rewrites
”为Yes
Answer 4:
这个怎么样在你的.htaccess:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
Answer 5:
嗨,我迟到了..只是想指出,从指令http://davidtsadler.com/archives/2012/06/03/how-to-install-magento-on-ubuntu/真的有用。
我曾与Apache,MySQL和PHP安装Ubuntu的服务器,所以我想我可以跳到标题创建从Magento的将要服务的目录 ,我得出了相同的问题,因为OP,也就是我有“的index.php”需要所有网址(或我会得到404未找到)。 然后我又回到了安装和配置Apache HTTP服务器和Apache的重新启动后,它完美的作品。
作为参考,我失踪了:
sudo bash -c "cat >> /etc/apache2/conf.d/servername.conf <<EOF
ServerName localhost
EOF"
...和
sudo a2enmod rewrite
sudo service apache2 restart
希望这可以帮助
Answer 6:
如果其他解决方案不适合你,试试这个:
步骤1:(如果您的安装是在根目录)
更换
#RewriteBase /magento/
同
RewriteBase /
第2步:
添加以下行(包括排除管理员,因为后端需要内部的index.php)
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.yourdomain.com/$1 [R=301,L]
RewriteRule ^index.php/(admin|user)($|/) - [L]
RewriteRule ^index.php/(.*) $1 [R=301,QSA,L]
右后
RewriteRule .* index.php [L]
这对我的作品
在情况下,它仍然没有工作,仔细检查Magento的配置:系统 - >配置 - >基于Web>搜索引擎优化。 重写必须启用。
Answer 7:
我试了后的一切,但没有工作过。 然后,我改变了的.htaccess代码段中ErJab竖起来阅读:
RewriteRule ^(.*)$ 'folder_name'/index.php/$1 [L]
上面一行固定对我来说。 其中* FOLDER_NAME *是magento的根文件夹。
希望这可以帮助!
Answer 8:
主要是如果你使用的是基于Linux的系统,如“Ubuntu的”,这只是建议用户本地主机不用于服务器。
按照前面的答案中提到的所有步骤。 +
检查它的Apache配置。 (所有的AllowOverride)如果设置AllowOverride值为none然后将其更改为全部,并再次重新启动Apache。
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
让我知道如果这个步骤帮助任何人。 因为它可以节省您的时间,如果你更早找到它。
我加入从本地主机我htaccess文件的确切行。 供你参考
周围的行号110
<IfModule mod_rewrite.c>
############################################
## enable rewrites
Options +FollowSymLinks
RewriteEngine on
############################################
## you can put here your magento root folder
## path relative to web root
#RewriteBase /
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
图像是对于一些用户谁从文字图像容易理解:
文章来源: How to remove index.php from URLs?