RewriteRules在cPanel(Apache)服务器上不匹配

时间:2014-12-11 13:28:29

标签: apache .htaccess magento mod-rewrite

我在Magento上使用下面的.htaccess文件,但网址不匹配,我无法看到我做错了什么。

我输入的网址为http://domain.com/product/66_fit_foam_roller_15_x_90cm/,我试图将其重定向到http://domain.com/66-fit-foam-roller-blue-15-x-90cm.html

传入的网址是否有www并不重要。我在http://htaccess.madewithlove.be/上测试了规则并输出了预期的网址,但在实际网站上却没有工作(没有重定向)

为了便于阅读而剪断了

####################################################################
################## Creare's Magento .htaccess File #################
####################################################################

##### Block unwanted Bots that clog the server #####

  RewriteCond %{HTTP_USER_AGENT} MJ12bot
  RewriteRule .* - [F]
  RewriteCond %{HTTP_USER_AGENT} 80legs [NC]
  RewriteRule ^ - [F]

##### Add support for SVG Graphics and CSS3 Pie #####

  AddType image/svg+xml svg svgz
  AddEncoding gzip svgz
  AddType text/x-component .htc
  DirectoryIndex index.php

##### Domain-specific PHP Settings #####

<IfModule mod_php5.c>
  php_value memory_limit 512M
  php_value max_execution_time 18000
  php_flag magic_quotes_gpc off
  php_flag session.auto_start off
  php_flag suhosin.session.cryptua off
  php_flag zend.ze1_compatibility_mode Off
</IfModule>

##### Necessary redirects and rewrites for search engines #####

<IfModule mod_rewrite.c>

</IfModule>


##### mod_deflate compresses your output to lower the file size being sent to the client #####

<IfModule mod_deflate.c>
  AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript
  BrowserMatch ^Mozilla/4 gzip-only-text/html
  BrowserMatch ^Mozilla/4\.0[678] no-gzip
  BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
  SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
  Header append Vary User-Agent env=!dont-vary
  php_flag zlib.output_compression on
</IfModule>

<Files *.php>
  SetOutputFilter DEFLATE
</Files>

<IfModule mod_ssl.c>
  SSLOptions StdEnvVars
</IfModule>


##### Header Directives #####

<ifModule mod_headers.c>
  Header unset ETag
  Header unset Last-Modified
</ifModule>


##### disable POST processing to not break multiple image upload #####

<IfModule mod_security.c>
  SecFilterEngine Off
  SecFilterScanPOST Off
</IfModule>


##### Enable apache served files compression #####

<IfModule mod_deflate.c>
  AddOutputFilterByType DEFLATE text/plain
  AddOutputFilterByType DEFLATE text/html
  AddOutputFilterByType DEFLATE text/xml
  AddOutputFilterByType DEFLATE text/css
  AddOutputFilterByType DEFLATE application/xml
  AddOutputFilterByType DEFLATE application/xhtml+xml
  AddOutputFilterByType DEFLATE application/rss+xml
  AddOutputFilterByType DEFLATE application/javascript
  AddOutputFilterByType DEFLATE application/x-javascript
  BrowserMatch ^Mozilla/4 gzip-only-text/html
  BrowserMatch ^Mozilla/4\.0[678] no-gzip
  BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
  SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
  Header append Vary User-Agent env=!dont-vary
</IfModule>


##### Mod gzip and caching for improved site speed #####

<ifModule mod_gzip.c>
  mod_gzip_on Yes
  mod_gzip_dechunk Yes
  mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
  mod_gzip_item_include handler ^cgi-script$
  mod_gzip_item_include mime ^text/.*
  mod_gzip_item_include mime ^application/x-javascript.*
  mod_gzip_item_exclude mime ^image/.*
  mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>


##### Default expires headers for all file types  #####
##### Not recommended for development environment #####

<ifModule mod_expires.c>
  ExpiresActive On
  ExpiresDefault "access plus 1 seconds"
  ExpiresByType text/html "access plus 1 seconds"
  ExpiresByType image/gif "access plus 2592000 seconds"
  ExpiresByType image/jpeg "access plus 2592000 seconds"
  ExpiresByType image/png "access plus 2592000 seconds"
  ExpiresByType text/css "access plus 604800 seconds"
  ExpiresByType text/javascript "access plus 216000 seconds"
  ExpiresByType application/x-javascript "access plus 216000 seconds"
</ifModule>


##### Mime Type Caching #####

<IfModule mod_mime.c>

  ##### AUDIO #####
    AddType audio/mp4 m4a f4a f4b
    AddType audio/ogg oga ogg

    ##### JAVASCRIPT #####
    # Normalize to standard type (it's sniffed in IE anyways):
    # http://tools.ietf.org/html/rfc4329#section-7.2
    AddType application/javascript            js jsonp
    AddType application/json              json

    ##### VIDEO #####
    AddType video/mp4                                   mp4 m4v f4v f4p
    AddType video/ogg                                   ogv
    AddType video/webm                                  webm
    AddType video/x-flv                                 flv

    ##### WEB FONTS #####
    AddType application/font-woff                       woff
    AddType application/vnd.ms-fontobject               eot

    ##### Browsers usually ignore the font MIME types #####
    ##### and sniff the content, however, Chrome shows  #####
    ##### a warning if other MIME types are used for  #####
  ##### the following fonts.              #####
    AddType application/x-font-ttf                      ttc ttf
    AddType font/opentype                               otf


    ##### OTHER #####
    AddType application/octet-stream                    safariextz
    AddType application/x-chrome-extension              crx
    AddType application/x-opera-extension               oex
    AddType application/x-shockwave-flash               swf
    AddType application/x-web-app-manifest+json         webapp
    AddType application/x-xpinstall                     xpi
    AddType application/xml                             atom rdf rss xml
    AddType image/webp                                  webp
    AddType image/x-icon                                ico
    AddType text/cache-manifest                         appcache manifest
    AddType text/vtt                                    vtt
    AddType text/x-component                            htc
    AddType text/x-vcard                                vcf

</IfModule>

<IfModule mod_mime.c>
    AddCharset utf-8 .atom .css .js .json .rss .vtt .webapp .xml
</IfModule>


##### Disable ETags http://developer.yahoo.com/performance/rules.html#etags #####

  FileETag None


##### Prevent character encoding issues from server overrides #####

  AddDefaultCharset Off
  #AddDefaultCharset UTF-8


##### Force IE8 compatibility when using IE8+         #####
##### May cause issues within Windows Mobile Browsers #####

  BrowserMatch MSIE best-standards-support
  Header set X-UA-Compatible IE=8 env=best-standards-support


##### By default allow all access #####

  Order allow,deny
  Allow from all

<IfModule mod_rewrite.c>
# remove trailing slash
RewriteRule ^(.*)/$ /$1


RewriteRule ^product/66_fit_foam_roller_15_x_90cm$ /66-fit-foam-roller-blue-15-x-90cm.html [R=301] 


  ##### Redirect away from /index.php and /home
  ##### Warning: This index.php rewrite will prevent Magento
  ##### Connect from working. Simply comment out the
  ##### following two lines of code when using Connect.
  ##### Please note - http://www. if not using www simply use http://

  RewriteCond %{THE_REQUEST} ^.*/index.php
  RewriteRule ^(.*)index.php$ http://domain.com/$1 [R=301,L]

    ##### Please note - http://www. if not using www simply use http://
  redirect 301 /home http://domain.com

  Options +FollowSymLinks
  RewriteEngine on
  RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
  RewriteCond %{REQUEST_URI} !^/(media|skin|js)/
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-l
  RewriteRule .* index.php [L]

</IfModule>

1 个答案:

答案 0 :(得分:1)

你的htaccess规则可能与Magento自己内置的URL Rewrite Management系统发生冲突。如果可能,我强烈建议使用该URL重写管理。

也许您首先必须从目录&gt;中删除旧的,不需要的重定向; URL重写管理并搜索匹配的路径。

接下来,您可以“添加网址重写”并选择“对于产品”(或自定义)并填写表单。