首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用.htaccess重写URL并删除部分

用.htaccess重写URL并删除部分
EN

Stack Overflow用户
提问于 2014-03-06 09:32:18
回答 1查看 121关注 0票数 0

我真的被困在了我的.htaccess文件中,需要一些帮助:)。我有一个用于测试的WordPress安装。它在一个文件夹中,我使用.htaccess到达那里。到目前为止,我使用的规则如下:

代码语言:javascript
复制
######### Custom #########
RewriteEngine On

# ignore folders
RewriteCond %{REQUEST_URI} "/af1wp/"
RewriteRule (.*) $1 [L]

###############
# only for me #
###############
# HOME (Senne Tijdeman)
RewriteCond %{REMOTE_ADDR} ^###\.###\.###\.###$
RewriteCond %{HTTP_HOST} ^((www.)?([a-z0-9_\-]+).)?alleenf1.nl$
RewriteCond %{REQUEST_URI} !^/af1wp/$
RewriteRule ^(.*)$ /af1wp/$1 [L]

这是可行的(当然是用我真正的IP地址),所以没有问题。但是现在我想要把现有的URL重写成一种新的格式。旧的URL是:

http://alleenf1.nl/nieuws/QOgbb/raikkonen-alles-is-mogelijk-in-australi

新的URL应该是:

http://alleenf1.nl/raikkonen-alles-is-mogelijk-in-australi

我想删除"nieuws/QOgbb/“的部分并不总是相同的,所以我必须使用regex。但我所做的一切都没有用。

我以为这会很简单,但显然对我来说不是很不幸。现在我有两个问题。

  1. 什么是正确的RewriteRule这样做?
  2. 我该把它放在哪里。在根文件夹的.htaccess中,还是WordPress安装所在的af1wp文件夹中?

Tnx先进

以下是poncha提出的问题:

  1. 是的,URL总是以to文件夹开头。只是为了澄清(不清楚) "nieuws“部分总是相同的,而不是第二部分(称为ID)。
  2. 我更喜欢重定向。
  3. /raikkonen-alles-is-mogelijk-in-australi文件是WordPress中的一篇文章。该WordPress安装当前驻留在af1wp文件夹中,但在运行时将被移动到根文件夹。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-06 10:02:50

试试这个:

代码语言:javascript
复制
RewriteEngine On
RewriteRule ^nieuws/([^/]+)/(.*) /af1wp/$1 [R=301,L,QSA]
  1. 这将只匹配以"nieuws“开头的URL。
  2. 现在,重写的目标是/af1wp/,在移动wordpress时将其更改为/
  3. 当您移动wordpress时,您需要在wordpress规则中混合这个规则,因为它已经重写了自己的规则--将这个规则置于规则之上。
  4. 这里使用的标志:
    • R=301 -使用HTTP 301重定向(永久移动)。
    • L -最后一条规则(在此规则成功匹配后停止规则解析)
    • QSA -查询-字符串-追加(将原始查询字符串追加到重写请求中)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22220266

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档