删除部分网址但不使用htaccess重定向

时间:2016-02-24 10:23:34

标签: .htaccess mod-rewrite url-rewriting rewrite

所以我看到的问题并没有设法解决!

例如,网址为http://someurl.com/brands/brand 我想要实现的是htaccess让te请求转到url:http://someurl.com/brands/brand,但删除了"品牌"部分来自网址。

如果网址:http://someurl.com/brands被称为页面"品牌"需要显示。所以只有当品牌/品牌/它需要对http://someurl.com/brand

进行URL重写时才会有品牌

我试过这个,但是这件作品重定向到了一个不存在的新位置。

RewriteRule ^onze-merken/(.*)$ /$1 [L,R=301]

所以我需要上面的重定向,它只需要重写URL。 任何帮助将不胜感激,谢谢!

这是我的htaccess部分,重写完成了!

# external redirect from actual URL to pretty one
RewriteCond %{THE_REQUEST} /onze-merken/(\S+)\s [NC]
RewriteRule ^ /%1 [R=302,L,NE]

# Only rewrite if the directory doesn't exist.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# internal forward from pretty URL to actual one
RewriteRule ^((?!onze-merken/).+)$ /onze-merken/$1 [L,NC]

RewriteRule ^(.*)\.html$ /$1 [L,R=301]
RewriteRule ^(uploads/([a-z0-9_\-\.]+)/__images/custom/(.*)/)(.*)$ http://someurl.com/uploads/$2/__images/custom/$3/$4 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

1 个答案:

答案 0 :(得分:0)

您可以在DOCUMENT_ROOT/.htaccess文件中使用此代码:

RewriteEngine On

# external redirect from actual URL to pretty one
RewriteCond %{THE_REQUEST} /brands/(\S+)\s [NC]
RewriteRule ^ /%1 [R=302,L,NE]

# internal forward from pretty URL to actual one
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^((?!brands/).+)$ brands/$1 [L,NC]