适用于
http://localhost.magento-store.com/index.php/fashion.html
但我需要它
http://localhost.magento-store.com/fashion.html
.htaccess
文件包含
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /magento-store.com/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /magento-store.com/index.php [L]
</IfModule>
数据库中的基本网址为http://localhost.magento-store.com/
管理员面板: SEO-&GT; Web服务器重写:是的 在前端使用安全网址:是
该怎么做?
答案 0 :(得分:1)
服务器是否正在应用.htaccess
文件?您可以通过在.htaccess
文件中引入语法错误并查看服务器是否返回500 Internal Server Error
来对此进行测试。如果您没有收到错误消息,那么您的.htaccess
文件就无法应用。这通常是由于服务器配置中的AllowOverride
指令。尝试为您的DocumentRoot目录添加AllowOverride All
。请注意,这必须在服务器配置中完成,因此请勿将其放入.htaccess
。
如上所述,请删除RewriteBase
指令(或将其设置为/
而不是/magento-store.com/
),并从/magento-store.com/
指令中删除RewriteRule
。如果http://localhost.magento-store.com/index.php/
工作正常,那么您的DocumentRoot
必须与index.php
文件位于同一目录中,因此您不希望为index.php
文件指定目录
作为参考,这里是Magento样本.htaccess文件的精简版:
<IfModule mod_rewrite.c>
############################################
## enable rewrites
Options +FollowSymLinks
RewriteEngine on
############################################
## rewrite API2 calls to api.php (by now it is REST only)
RewriteRule ^api/rest api.php?type=rest [QSA,L]
############################################
## workaround for HTTP authorization
## in CGI environment
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
############################################
## TRACE and TRACK HTTP methods disabled to prevent XSS attacks
RewriteCond %{REQUEST_METHOD} ^TRAC[EK]
RewriteRule .* - [L,R=405]
############################################
## 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>
答案 1 :(得分:0)
请检查您的apache服务器 rewrite_module 是否启用。