当前位置: 首页 > 知识库问答 >
问题:

不同的apache重定向/重写规则为一个域

仇经武
2023-03-14

有人能帮我重定向/重写url吗?

  1. 例如。com/url/*--

我在VHost文件中尝试了重定向匹配或重新写入规则。。。

  1. 重定向匹配^/url/(.*)$ http://newdomain.com/new/path/url/url/1美元
  2. 重定向匹配 ^/(.*)$ http://newdomain.com/new/path/go/1美元
  3. 重写引擎在重写康德%{HTTP_HOST}^example.com$重写规则 ^(.*)$ http://newdomain.com/1美元

谢谢你的帮助!!

共有1个答案

南门正祥
2023-03-14

要超过转发的URL,请使用[P]作为参数,并使用重写而不是重定向,对于startpage,请使用R=301永久重写到新域:

如果真的需要(如果两个域都托管在一个没有vhost的服务器上)把这个放在前面:

RewriteEngine On

RewriteCond %{HTTP_HOST} !^example.com$
RewriteRule .? - [S=3]
RewriteRule  ^/$ http://newdomain.com/ [R=301,L]
RewriteRule  ^/url/(.*)$ http://newdomain.com/new/path/url/$1 [P,L]
RewriteRule  ^/(.*)$ http://newdomain.com/new/path/to/go/$1 [P,L]

让我们知道它是否按预期工作,如果不是,哪里出错了:)

使现代化

把这个放到LoadModuelconf中:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

这就是你的重写等:

RewriteEngine On

RewriteCond %{HTTP_HOST} example.com$
RewriteRule  ^/$ http://newdomain.com/ [R=301,L]

ProxyPreserveHost on
ProxyPassMatch  /url/(.+) http://newdomain.com/new/path/url/$1
ProxyPassMatch  /(.+) http://newdomain.com/new/path/to/go/$1
ProxyPassReverse / http://newdomain.com/
 类似资料:
  • 我有一个客户在他们的网站上有一个重写规则,使用404和SSL与https:但它总是重写为“www.mywebsite”。com'。他们希望它没有www。每当我试图修改规则时,代码就会因“太多重定向”而中断 这是旧的. htaccess规则 我试图删除上面的“www”,但当我这样做时,你会得到一个错误-无休止的重定向。 目标是一个简单的重写规则,允许所有重定向和404错误转到https://mywe

  • 我想使用apache mod_重写规则重定向到动态URL,而不改变URL本身。 动态URL:www.example.com/business/carwash 在上面的url中,“洗车”部分是一个用户名,用于查找特定的业务。我想要一个这样的网址:carwash.example.com重定向以显示此网址的内容:www.example.com/business/carwash而不改变网址(网址保持car

  • dml2select Description:将数据库更新请求转换为只读查询请求,便于执行EXPLAIN Original: DELETE FROM film WHERE length > 100 Suggest: select * from film where length > 100 star2columns Description:为SELECT *补全表的列信息 Original:

  • 问题内容: 显然,整个网络上都有大量的mod重写讨论和答案。但是,我很难抓住它们。所以我想我会问这里。 这是我当前在example.com根目录下的目录结构 应用/ app / index.html(Angular js应用程序的“根”) api(这将是一个用于’api’的symfony 2应用程序。我将从这里从angular发送ajax请求。) 我想将所有请求重定向到app / index.ht

  • 表单的url https://www.example.com/i/http://some-image-url.png 文档链接:http://docs.aws.amazon.com/amazons3/latest/dev/howdoiwebsiteconfiguration.html#configure-bucket-as-website-routing-rule-syntax

  • 在我的网站上有许多JS文件,我希望如果一个特定的JS被加载到浏览器中,那么重写将调用另一个域中的servlet。 为此,我添加了以下行: 当我在浏览器控制台中看到输出时,它说执行了Http方法选项而不是GET call。结果,我没有得到在这个调用http://anotherdomain.com/bin/test/custom中应该执行的期望输出 servlet(/bin/test/custom)只