【问题标题】:htaccess removing extra directory names in urlhtaccess 删除 url 中的额外目录名称
【发布时间】:2016-05-06 04:06:52
【问题描述】:

我有类似的东西:

(obvious)domain.com/cityname1/cityname2/citynameN/myscript.html

如何保留cityname1、删除cityname2-N 并保留scriptname? (在本例中为myscript.html。)

我想要:

(obvious)domain.com/cityname1/myscript.html

【问题讨论】:

  • 通常这是通过正则表达式完成的,正如您所注意到的。到目前为止,您尝试过什么?对于各种样本输入,您得到了什么结果?请参考stackoverflow.com/help/mcve

标签: regex .htaccess directory


【解决方案1】:

我通过将我的条件更多地移到顶部来解决它并且必须有 2 个,但这里是:

#2+ 文件夹 - 只要您尚未添加 http://www。到 %{HTTP_HOST} :

RewriteCond %{HTTP_HOST} ^domain.com

RewriteCond %{REQUEST_URI} !(images|img|css|js) [NC] #排除任何你想实际使用的目录

RewriteRule (.)(/\w+/)(./)(.*)$ http:/www.domain.com/$1/$4 [L,NC]

#1 文件夹 - 只要您尚未添加 http://www。到 %{HTTP_HOST} :

RewriteCond %{HTTP_HOST} ^domain.com

RewriteCond %{REQUEST_URI} !(images|img|css|js) [NC] #排除任何你想实际使用的目录

重写规则 (.)(/\w+/)(.)$ http://www.domain.com/$1/$3 [L,NC]

【讨论】:

    猜你喜欢
    • 2019-06-19
    • 2020-01-31
    • 2020-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-31
    相关资源
    最近更新 更多