.htaccess。带重写条件的重定向

发布于 2024-10-30 13:17:11 字数 676 浏览 2 评论 0原文

如何进行重定向 site.com/ru/blablabla 至 site.com/blablabla ??

还有一个如果链接 site.com/en/blablabla 服务器返回 404, 然后我需要重定向到 site.com/blablabla

我的 .htaccess:

    ########## Begin - Joomla! core SEF Section
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## End - Joomla! core SEF Section

######### MY RULES #########
RewriteCond %{REQUEST_URI} \/ru\/(.*)
RewriteRule (.*)$ /%1

How to make redirect from
site.com/ru/blablabla to
site.com/blablabla
??

And one more if on link site.com/en/blablabla server return 404,
then I need redirect to site.com/blablabla

my .htaccess:

    ########## Begin - Joomla! core SEF Section
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## End - Joomla! core SEF Section

######### MY RULES #########
RewriteCond %{REQUEST_URI} \/ru\/(.*)
RewriteRule (.*)$ /%1

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

欲拥i 2024-11-06 13:17:11

您可以删除 ########## 我的规则######## 下的所有行吗
行并放置此行:

RewriteRule ^(en|ru)/(.*)$ /$2 [R,L]

这将同时处理 /ru/foo 和 /en/foo URL。

Can you remove all the lines under ######### MY RULES #########
line and put this line:

RewriteRule ^(en|ru)/(.*)$ /$2 [R,L]

This will take care of both /ru/foo and /en/foo URLs.

似梦非梦 2024-11-06 13:17:11

首先:
在 .htaccess 文件顶部添加 RewriteEngine on


尝试此规则:对于 ru404

ErrorDocument 404 /error404.php

RewriteCond %{REQUEST_URI} \/ru\/(.*)
RewriteRule (.*)$ /%1

在这种情况下(英文版)我可以建议你检查错误文档中的HTTP_REFERER(在上面的情况下是error404.php)...并将请求重定向到相应的页面...(在你的情况下是/blablabla)

希望你明白我的意思..:)

First of all:
Add RewriteEngine on at the top of the .htaccess file


Try this rule: for ru and 404

ErrorDocument 404 /error404.php

RewriteCond %{REQUEST_URI} \/ru\/(.*)
RewriteRule (.*)$ /%1

in that case (English version) i can suggest you to check HTTP_REFERER in errordocument (in above case its error404.php)... and redirect the request to respective page... (in your case its /blablabla)

Hope you got my point.. :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文