Php magento内部页面不工作,是否重定向到404页面?
magento内部页面(类别链接、产品页面和其他页面等)不工作,是否重定向到404页面?只有主页在工作 我的链接是Php magento内部页面不工作,是否重定向到404页面?,php,.htaccess,magento,Php,.htaccess,Magento,magento内部页面(类别链接、产品页面和其他页面等)不工作,是否重定向到404页面?只有主页在工作 我的链接是 http://localhost/magento/men.html http://localhost/magento/men/new-arrivals.html http://localhost/magento/tori-tank-586.html 管理中 使用Web服务器重写-->是 在前端-->中使用安全URL是 下面是我的.htaccess文件 <IfModule
http://localhost/magento/men.html
http://localhost/magento/men/new-arrivals.html
http://localhost/magento/tori-tank-586.html
管理中
- 使用Web服务器重写-->是
- 在前端-->中使用安全URL是
<IfModule mod_rewrite.c>
############################################
## enable rewrites
Options +FollowSymLinks
RewriteEngine on
############################################
## you can put here your magento root folder
## path relative to web root
RewriteBase /magento/
############################################
## uncomment next line to enable light API calls processing
# RewriteRule ^api/([a-z][0-9a-z_]+)/?$ api.php?type=$1 [QSA,L]
############################################
## 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]
############################################
## redirect for mobile user agents
#RewriteCond %{REQUEST_URI} !^/mobiledirectoryhere/.*$
#RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod|iemobile|opera mobile|palmos|webos|googlebot-mobile" [NC]
#RewriteRule ^(.*)$ /mobiledirectoryhere/ [L,R=302]
############################################
## 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>
############################################
##启用重写
选项+FollowSymLinks
重新启动发动机
############################################
##您可以将magento根文件夹放在这里
##相对于web根目录的路径
重新编写BASE/magento/
############################################
##取消注释下一行以启用轻API调用处理
#重写规则^api/([a-z][0-9a-z]+)/?$api.php?type=$1[QSA,L]
############################################
##重写对api.php的API2调用(现在只剩下REST)
重写规则^api/restapi.php?type=rest[QSA,L]
############################################
##HTTP授权的变通方法
##在CGI环境中
重写规则。*-[E=HTTP\U授权:%{HTTP:AUTHORIZATION}]
############################################
##禁用跟踪和跟踪HTTP方法以防止XSS攻击
RewriteCond%{REQUEST_METHOD}^TRAC[EK]
重写规则。*-[L,R=405]
############################################
##移动用户代理重定向
#重写cond%{REQUEST_URI}^/mobiledirectoryhere/*$
#重写Cond%{HTTP|u USER|u AGENT}“android |黑莓| ipad | iphone | ipod | iemobile | opera mobile | palmos | webos | googlebot mobile”[NC]
#重写规则^(.*)$/mobiledirectoryhere/[L,R=302]
############################################
##在这些文件夹中丢失文件时始终发送404
重写cond%{REQUEST_URI}^/(媒体|皮肤| js)/
############################################
##决不重写现有文件、目录和链接
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-L
############################################
##将所有其他内容重写为index.php
重写规则。*index.php[L]
将.htaccess替换为新安装的默认访问。
清除缓存和会话。你可以走了 将.htaccess替换为新安装的默认.htaccess。
清除缓存和会话。你可以走了 在htaccess文件中将
RewriteBase/magento/
替换为RewriteBase/
。并清除缓存。将htaccess文件中的RewriteBase/
替换为RewriteBase/
。并清除缓存。如果您能够像http://localhost/magento/index.php/men/new-arrivals.html
。如果是,请尝试启用apache重写模块,然后重新启动服务器并再次检查。如果您能够访问内部页面,如http://localhost/magento/index.php/men/new-arrivals.html
。如果是,请尝试启用apache重写模块,然后重新启动服务器并再次检查。我找到了解决方案
打开此文件
/etc/apache2/站点可用/默认
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
选项索引跟随符号链接多视图
允许超越所有
命令允许,拒绝
通融
此外,还需要进行上述更改
/etc/apache2/apache2.conf
选项索引跟随符号链接
允许超越所有
要求所有授权
重新启动Apache
sudo服务apache2重启我找到了解决方案
打开此文件
/etc/apache2/站点可用/默认
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
选项索引跟随符号链接多视图
允许超越所有
命令允许,拒绝
通融
此外,还需要进行上述更改
/etc/apache2/apache2.conf
选项索引跟随符号链接
允许超越所有
要求所有授权
重新启动Apache
在本地服务器上重新启动sudo service apache2,请根据所附屏幕截图启用“重写”模块。希望它能解决你的问题 在本地服务器上,请根据所附屏幕截图启用“重写”模块。希望它能解决你的问题 这也发生在我身上。这可能有两个问题: 1) 您的服务器没有为您提供mod_rewrite访问权限。为此,只需转到服务器安装(如果是本地的),然后在apache中安装conf(对于xampp)。您将在那里找到一个httpd文件。在该文件中,找到“加载模块重写模块/module\u rewrite.so”。这可能会因您的php版本而异。如果有注释,只需取消注释(通过删除#)。如果已经未注释,则这不是问题所在
2) 现在您没有htaccess文件,因为在某些情况下,它在git repo中处于忽略状态。因此,只需转到magento的工作文件夹,将所有.htaccess文件复制粘贴到新文件夹中即可。重新启动您的服务器,它就会工作。我也遇到过这种情况。这可能有两个问题: 1) 您的服务器没有为您提供mod_rewrite访问权限。为此,只需转到服务器安装(如果是本地的),然后在apache中安装conf(对于xampp)。您将在那里找到一个httpd文件。在该文件中,找到“加载模块重写模块/module\u rewrite.so”。这可能会因您的php版本而异。如果有注释,只需取消注释(通过删除#)。如果已经未注释,则这不是问题所在
2) 现在您没有htaccess文件,因为在某些情况下,它在git repo中处于忽略状态。因此,只需转到magento的工作文件夹,将所有.htaccess文件复制粘贴到新文件夹中即可。重新启动服务器,它就会工作。尝试索引管理。在那之后,我也试过了。已尝试重新索引和刷新缓存管理。请尝试索引管理。在那之后,我也试过了。尝试重新索引和刷新缓存管理。我做了相同的操作,但仍然无法工作。如果有任何文件夹或文件