我的Magento是在/ var / WWW / Magento的安装Ubuntu Linux操作系统。 这个问题看起来有些在档案的问题,但实际上可以有所不同。 当我在Ubuntu Linux上安装的Magento我启用的Apache mod_rewrite的URL重写。
当我去到http://本地主机/ Magento的我的服务器重写URL为http://本地主机/ Magento的/并显示页面。 然后我点击导航栏中的链接之一,让我们说这是导航栏项“富”。 然后Magento的带我到:
HTTP://本地主机/ Magento的/ foo.html
其显示“未找到”的Apache网页。
我必须要改变的URL ----->
HTTP://本地主机/ Magento的/ index.php文件/ foo.html
为了显示页面。
这是因为,虽然事情是在我的mod_rewrite运作不对劲。
谢谢,
约翰Goche的
配置:系统 - >配置 - >(常规 - >)网址:
使用服务器网址重写:YES
基本的URL:http://本地主机/ Magento的
如果设置了“用户的Web服务器改写:”为NO,然后从我的主网页做工精细的联系,但看到页面http://本地主机/ Magento的/ index.php文件/ foo.html这显示正确的页面,但而该网站的工作,我不喜欢的网址。 我想这是http:没有的index.php位//本地主机/ Magento的/ foo.html,因为这也可能会更加SEO友好。
谢谢,
约翰Goche的
更新:我试着取消注释在Ubuntu中已经把在/ etc / hosts中我人工127.0.1.1的IP地址,并把我的疗法的真实IP,但没有运气。 我仍然有完全相同的问题。 而我的浏览器中的URL重写为http://本地主机的/ etc ... whenver I型192.168.3.31,雪崩,或avalanche.com里面。 我仍然试图找出如何解决上面的,因为这并没有这样做所描述的问题。
127.0.0.1 localhost
#127.0.1.1 avalanche
192.168.4.35 avalanche avalanche.com
当我重新启动Apache,我得到:
# service apache2 restart
* Restarting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 192.168.4.35 for ServerName
... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 192.168.4.35 for ServerName
不知道如何解决原来的问题。 我测试在本地服务器上。
我甚至试过这种解决方案,然后重新启动的Apache2,但没有运气!
如何从网址中删除的index.php?
因此,将:
RewriteEngine On
RewriteBase /mymagento/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
不工作,甚至RewriteBase /,这是行不通的。
OK,最后我设法解决probkem。 文件/ etc / apache2的/ / 000默认有以下指令,此文件中定义的所有目录设置启用的站点 - :
AllowOverride None
例如,对于在/ var / WWW这是默认的文档根在Ubuntu 12.04设置LTS Linux系统该文件包含
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
其中,据我理解是指该目录及其所有子目录中找到.htaccess文件将不被解析。 要修复它是足够的设置问题:
AllowOverride All
这意味着你将能够覆盖/etc/apache2/apache2.conf中找到的服务器配置指令(或/etc/apache2/httpd.conf其被包括在其中)。
其中一个是的AllowOverride默认设置为无可能,这导致服务器速度变慢,另一种是出于安全考虑的原因。 此指令应在标签中进行设置,而后者的人可以覆盖前者。 这不是默认设置的另一个原因是,每次都在一个目录路径的文件加载可能会减慢系统递归解析的.htaccess整个站点,因此放置的.htaccess东西在/etc/apache2/httpd.conf当可能是值得推荐的,因为它可以导致速度的提高。
所以地方
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
#AllowOverride None
AllowOverride All
Order allow,deny
allow from all
</Directory>
里面的/ etc / apache2的/网站启用/ 000-默认
并运行:服务重新启动的Apache2
是解决方案。