当前位置首页 > Ubuntu知识

Magento去掉URL地址中的index.php字符串[ubuntu]

阅读次数:404 次  来源:admin  发布时间:

在使用magento的过程中, 由于它的每个页面的URL地址中均带有index.php这个字符串, 然后再加其他的字符的形式组成, 而这对于搜索引擎来讲肯定不是什么好事, 如何去掉这个烦人的index.php就成了一个很大的问题. 其实magento本身也已经考虑到了这个问题, 不过要去掉它还需要服务器方面做一个小小的调整, 而且还要启用apache2的重写功能(发现这一点,花费了将近一整天的时间), 好在解决了这个问题, 终有所得,(另外要说明的是, Ubuntu/Debian 下的 Apache 的主配置文件是 /etc/apache2/apache2.conf, 而其他的系统很有可能是httpd.conf,这个根据各自系统的特点自己去寻找. )以下是解决这个问题的方法:

1. 进入apache2服务器的配置文件,位置已经在其他的博客文章里有提到过.(shell下使用vi或者vim编辑工作, winscp下可以直接进入编辑, ftp同winscp), 找到对应的网站配置文件, 我是把所有的AllowOverride None修改为AllowOverride All,大家也可以这样做, 最主要的当属以下的示设置(只改了AllowOverride属性值)

DocumentRoot /var/www/magento

lt;Directory />

Options FollowSymLink

AllowOverride All 这里修改成All

lt;/Directory>

lt;Directory /var/www/magento/>

Options Indexes FollowSymLinks MultiView

AllowOverride All 这里修改成All

Order allow,deny

allow from all

lt;/Directory>

(以上是程序片段, 请注意)

2.启用apache2的重写模块(这个很重要, 我在这个上面吃足了苦头), 这个要在shell里面进行比较方便, 当然你也可以通过修改php.ini属性值来实现, 不过使用shell方式比较简单, 我是使用PuTTY工具操作的, 具体的今天如下:

#sudo a2enmod rewrite(使用非管理员帐号登陆的情况,如果是管理员的话就直接使用这个命令: a2enmod rewrite)

截图参考:

Magento去掉URL地址中的index.php字符串[ubuntu]

3.登录Magento后台系统,系统(System) => 配置(Configuration) => 网站(Web)=> 搜索引擎优化(Search Engines Optimization)=> 服务器重写(Use Web Server Rewrites),然后选择” yes” 即可(记得刷新Magento缓存)

截图参考:

Magento去掉URL地址中的index.php字符串[ubuntu]

4. 修改.htaccess文件的配置(位置在magento的安装目录下,如/var/www/magento/.htaccess)

确保为(其实只须检查一下, 这个是默认开启的):

############################################

## enable rewrite

Options +FollowSymLink

RewriteEngine o

############################################

## you can put here your magento root folder

## path relative to web root

RewriteBase /

5. 重启apache2服务器

/etc/init.d/apache2 restart

然后刷新前台页面,即可出现你所希望的URL地址形式

上一篇:Debian9Docker容器下缺少的日常命令
下一篇:kali中的APT软件包处理工具(apt-get)、Debian软件包管理器(dpkg)、源代码压缩和Nessus安装实用指南