问题标签 [url-masking]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
273 浏览

php - nginx 掩码 URL 不重定向

我有一个在 nginx 上运行的站点。

在我的 nginx/sites-available/default 文件中,我有一行:

这样做是使 examplesite.com 转发到 examplesite.com/search.php?path=$1,然后屏蔽该新 URL。因此,该 url 看起来像“examplesite.com”并且运行起来像 examplesite.com/search.php?path=$1

我想做一些不同的事情。

我不想改变examplesite.com的功能,而是让url examplesite.com/search.php?path=$1 显示为examplesite.com/$1 并保持其相同的功能。

所以我不想重定向,只是让 examplesite.com/search.php?path=$1 显示为 examplesite.com/$1

但是,似乎 rewrite 无法处理此功能。是否可以在 nginx 中具有该功能?

编辑 1

例如:

我有网址http://www.examplesite.com/search.php?search=house&location=chicago

我想保留该功能,但只需使其显示为:

http://www.examplesite.com/chicago/house

编辑 2

我有更改的代码:

http://www.examplesite.com/search.php?search_title=apple&search_location=boston

至:

http://www.examplesite.com/boston/apple?search_title=apple&search_location=boston

这是代码:

但问题是这会导致网站上的 PHP 代码失败,最后仍然显示所有参数。

编辑 3

看了这个:https://serverfault.com/questions/160790/nginx-rewrite-for-an-url-with-parameters如评论中所建议的那样,我现在可以显示正确的 url:

http://www.examplesite.com/boston/apple

通过添加 ? 最后使我当前的代码如下:

但是这个 url 是 PHP 正在读取的 url。所以,我得到一个 404 Not Found 这是有道理的。

是否可以让 PHP 读取旧 URL,但在浏览器中保留现在的 URL?

编辑 4

我不确定,但我在想nginx的rewrite函数可能无法做我想做的事,所以我在看proxy_pass和proxy_set_header

编辑 5

我有第二个问题在这里从一个单独的角度解决问题:Nginx redirect URL into a PHP GET url

0 投票
1 回答
1532 浏览

apache - 如何屏蔽 .htaccess 文件中的 url

我希望发生以下情况:

当访问者在我的网站上键入错误的 URL 时,我希望它能够将访问者重定向到我创建的自定义错误页面。但是,我希望在www.example.com错误页面本身可能为www.example.com/errorDocs/404.error.

这是我目前拥有的,但它不起作用:

0 投票
2 回答
2622 浏览

azure-api-management - 删除查询字符串参数

有没有办法从 azure api 管理中的 url 中删除查询字符串参数?提前致谢

0 投票
3 回答
1608 浏览

url-masking - HTML 中的屏蔽 URL

我有一个 HTML 页面。假设网址是

但我想将 URL 屏蔽为

我们可以这样做吗?

0 投票
1 回答
511 浏览

.htaccess - .htaccess 子域的掩码 URL

我们网站的子域 reading.domain.com 包含我们希望人们看到的内容,但 URL 应该是 domain.com/reading。

我不是 URL 重写方面的专家,但我尝试编辑 htaccess,但它只重定向页面。

我们正在使用siteground,托管公司是否与他们的apache配置有关以使其工作?

非常感谢。

0 投票
2 回答
1034 浏览

asp.net - 将 URL 重定向和屏蔽到 Azure 子域

我有一个在 Azure 上运行的 ASP.NET MVC Web 应用程序作为generic-site.co. 这是一个支持多个子域的白标站点:acme.generic-site.coglobex.generic-site.coinitech.generic-site.co等。浏览每个子域会更改页面上的品牌,但基本功能完全相同。

acme-site.com同时我有一个由 GoDaddy 托管的外部域名。我想将其专门重定向到acme.generic-site.co子域,但我还想将其保留acme-site.com为根 URL,以便在该站点上进行任何进一步的浏览,从而使用户能够获得纯粹的acme体验,而无需任何潜在的暗示generic-site

我尝试使用带有屏蔽的 GoDaddy 的域转发来做到这一点,但我几乎立即遇到了 CSRF 问题。

有什么办法可以做到这一点?我怀疑 IIS URL 重写可能会有所帮助,但我不知道如何继续。

0 投票
1 回答
5384 浏览

svg - 内联 SVG Defs 元素中的 Alpha 透明渐变

我有这个CODEPEN,这是我的问题:

我不明白为什么我应用并引用为我的蒙版填充的渐变没有按应有的方式渲染。它应该从完全不透明变为完全透明。对于我正在使用的渐变:http ://angrytools.com/gradient/?0_800080,100_450045&0_0,100_100&l_180 :

此外,我不明白为什么要从我的 use 元素中删除 fill="blue" 属性,如下所示:

文本显示为黑色,就好像没有应用渐变一样。我定义的渐变是紫色的..

谢谢!

0 投票
1 回答
616 浏览

php - 使用转发重写时,Wordpress wp-login 重定向到错误的 url

我们有一个域https://developer.site.com在一台服务器上提供服务。然后,我们将https://developer.site.com/blog转到一个完全不同的位置,提供一个 wordpress 站点。(从技术上讲,这称为“前向重写”。)

前端和大多数管理员都表现良好,但是有几个地方重定向回另一台服务器上的 404。

例如:

https://developer.site.com/blog/wp-login.php?action=rp&key=t34T4akjihAB231sCwgJU9TU&login=abcde

此 URL 重定向到 404,不包括 URL 中的 /blog 部分。

跟踪站点时,它似乎转到了正确的 url,但随后 wordpress 立即将其发送到 404 页面,因此 wordpress 有问题。我们已经检查并再次检查了域掩码,我们确信一切正常。

我在代码中找到了 wp_safe_redirect() 几次。这可能是罪魁祸首?也许有些东西拉错了目录结构,在内部省略了 /blog 部分,但我不明白为什么这很重要。

0 投票
1 回答
747 浏览

.htaccess - 地址栏中的 URL 掩码

我的服务器中有一个应用程序,例如 www.myDomain.com/pos,我的客户想用他的域名运行这个应用程序:www.clienDomain.com/pos。但我不想将我的应用程序安装到客户端服务器。有什么方法可以使用客户端域名访问我的服务器吗?

0 投票
0 回答
61 浏览

wordpress - .htaccess 隐藏路径中的第一个子目录

我注意到已经有与我非常相似的问题,已经在这个网站上得到了回答。但是我一直在努力没有成功实施那里提供的解决方案,所以我敢再次提出这个问题。能否请你帮忙?

我在 wordpress 中开发了一个网站,并将所有内容放在一个特定的子目录下(我的主机提供商使用 Apache,不用说),这样:

  1. 所有文件都在/public_html/es/中(由于某些历史原因,子目录的名称是“es”,我只是在这里指定它,因为它是一个非常常见的字符串,可能需要非常准确的正则表达式)。
  2. 一切正常,我可以导航到 URL www.example.com/es上的站点,然后点击链接,例如www.example.com/es/whatever1/whatever2/
  3. 此外,我实现了一个多语言插件,当我想切换到另一种语言(本例中为意大利语)时,该插件允许页面显示为www.example.com/es/whatever1/whatever2/?lang=it 。
  4. 最后,我对.htaccess文件进行了如下编码,以允许访问者只需输入域名即可访问该页面:

/public_html/.htaccess

/public_html/es/.htaccess

从技术上讲,它似乎工作正常:您可以通过键入“example.com”访问该站点,然后浏览它,因为 URL 已转换为“example.com/es”。

现在......出现在浏览器 URL 字段中的“ /es/ ”字符串很烦人,有时甚至会产生误导,因为它让一些访问者相信他们在网站的“西班牙语”版本中,而该字符串只是一个片段的路径。

我不想将整个站点移动到/public_html下的另一个路径,有没有办法可以从浏览器 URL 字段中隐藏“ /es ”字符串?当然,我只需要隐藏第一次出现的“/es”(即我想要那个

example.com/es/thes子目录/ ? lang =xx

显示为

example.com/th es子目录/?lang=xx

)。

正如最初评论的那样,我无法成功实施我在 stackoverflow 其他地方找到的任何建议。

非常感谢您耐心阅读这篇长文。