首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

"www到非www“的mod_rewrite规则不重定向子页面

"www到非www"的mod_rewrite规则不重定向子页面是指在使用Apache的mod_rewrite模块进行URL重写时,将带有"www"前缀的URL重定向到没有"www"前缀的URL,但不会重定向子页面。

mod_rewrite是Apache服务器中的一个强大的URL重写模块,它允许通过定义规则来修改URL的结构。在这个问答内容中,我们需要实现的是将带有"www"前缀的URL重定向到没有"www"前缀的URL,但是要保持子页面的URL不受影响。

下面是一个示例的mod_rewrite规则,可以实现"www"到非"www"的重定向:

代码语言:txt
复制
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ http://example.com/$1 [L,R=301]

上述规则的含义是,如果HTTP请求的主机名以"www.example.com"开头(不区分大小写),则将请求重定向到"http://example.com/",并保持原始请求的路径不变。

这个规则中的RewriteCond指令用于设置条件,%{HTTP_HOST}表示HTTP请求的主机名,^www\.example\.com表示以"www.example.com"开头,NC表示不区分大小写。

RewriteRule指令用于设置重写规则,^(.*)$表示匹配任意路径,http://example.com/$1表示重定向到"http://example.com/",[L,R=301]表示将重定向设置为永久性(301)并停止后续规则的处理。

这样配置后,当用户访问以"www.example.com"开头的URL时,会自动重定向到对应的非"www"的URL,同时保持子页面的URL不受影响。

推荐的腾讯云相关产品是腾讯云CDN(内容分发网络),它可以加速网站的访问速度,提高用户体验。腾讯云CDN可以通过配置域名的加速规则来实现"www"到非"www"的重定向,同时保持子页面的URL不受影响。

腾讯云CDN产品介绍链接地址:https://cloud.tencent.com/product/cdn

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何在CentOS 7上使用Nginx将www定向www

介绍 当你有你网站或应用程序启动和运行一个域背后,则是经常需要还允许用户通过简单域名访问到它,并在WWW域名。...本教程将告诉你如何在WWW URL重定向www,例如,www.example.com以example.com在CentOS 7.我们也将告诉你如何在另一个方向重定向,从www网址,与NginxWWW...选项1:将www定向www 如果要将用户从www定向普通www域,请插入以下配置: server { server_name www.example.com; return...这会将Nginx配置为将请求重定向www.example.com ”“example.com”。请注意,应该有另一个服务器块来定义您www Web服务器。...选项2:将www定向www 如果要将用户从普通www域重定向www域,请添加此服务器块: server { server_name example.com; return 301

3.4K00

如何在Ubuntu 14.04上使用Apache将www定向www

我们还将向您展示如何从另一个方向重定向,从www URLwww。 准备 一台已经设置好可以使用sudo命令root账号Ubuntu服务器,并且已开启防火墙。...现在您服务器应该可以通过wwwwww域访问,但我们仍然需要设置重定向。我们现在就这样做。 启用重写模块 为了执行301重定向,我们将使用Apache mod_rewrite或Rewrite模块。...首先,使用以下命令启用mod_rewrite模块: sudo a2enmod rewrite 启用Rewrite模块后,我们可以使用.htaccess文件为Apache配置重定向规则。...选项1:将www定向www 如果要将用户从www定向普通www域,请插入以下配置: RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST...选项2:将www定向www 如果要将用户从普通www域重定向www域,请插入以下配置: RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST

3.5K00

如何在Ubuntu 14.04上使用Nginx将www定向www

介绍 当你有你网站或应用程序启动和运行一个域背后,则是经常需要还允许用户通过简单域名访问到它,并在WWW域名。...我们还将向您展示如何从另一个方向重定向,从www URLwww。 准备 一台已经设置好可以使用sudo命令root账号Ubuntu服务器,并且已开启防火墙。...选项1:将www定向www 如果要将用户从www定向普通www域,请插入以下配置: server { server_name www.example.com; return...这会将Nginx配置为将请求重定向www.example.com ”“example.com”。请注意,应该有另一个服务器块来定义您www Web服务器。...选项2:将www定向www 如果要将用户从普通www域重定向www域,请添加此服务器块: 新服务器块 - wwwwww server { server_name example.com

2.7K00

如何在CentOS 7上使用Apache将www定向www

介绍 当你有你网站或应用程序启动和运行一个域背后,则是经常需要还允许用户通过简单域名访问到它,并在WWW域名。...本教程将告诉你如何在WWW URL重定向www,例如,www.example.com以example.com在CentOS 7.我们也将告诉你如何在另一个方向重定向,从www网址,与Apache...启用Apache重写模块 为了执行301重定向,我们将使用Apache mod_rewrite或Rewrite模块。这样做可以确保您用户可以使用或不使用www访问您网站。...选项1:将www定向www 如果要将用户从www定向普通www域,请插入以下配置: RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST...选项2:将www定向www 如果要将用户从普通www域重定向www域,请插入以下配置: RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST

4.2K10

Apache URL重定向

URL重写应用场景 域名变更:比如京东 伪静态:便于CDN缓存页面 域名伪装:隐藏URI真实路径 二、URL重写 1)重写指令介绍 RewriteEngine on #开启mod_rewrite模块功能...比如,在执行一个外部重定向时, 对一个目录级规则集,你可能需要删除“.www” (此处不应该出现“.www)。...nosubreq|NS (仅用于不对内部请求进行处理 no internal sub-request) 在当前请求是一个内部请求时,此标记强制重写引擎跳过该重写规则。...def$1 [PT] Alias /def /ghi 如果省略了PT标记,虽然mod_rewrite运作正常, 即, 作为一个使用APIURI文件名翻译器,它可以重写uri=/abc/…为filename...注意: 如果需要混合使用不同包含URI文件名翻译器模块时, 就必须使用这个标记。。混合使用mod_alias和mod_rewrite就是个典型例子。

5.4K20

如何在CentOS 7上为Apache设置mod_rewrite

准备 一台已经设置好可以使用sudo命令root账号CentOS服务器,并且已开启防火墙。...但是,我们希望将所有格式错误网址重定向回主页,而不是错误页面。使用条件,我们可以检查所请求文件是否存在。 RewriteCond %{REQUEST_FILENAME} !....*)$ /admin/home 这将重定向像/admin/random_text/admin/home 。 让我们剖析上述规则: %{REQUEST_FILENAME} 检查请求字符串 !...为此,我们将创建一个ErrorDocument规则,将404错误指向error.html页面: ErrorDocument 404 /error.html 这会将导致HTTP 404响应任何请求重定向...使用重写规则原因有很多,以下资源详细介绍了mod_rewrite模块功能: Apache mod_rewrite简介 mod_rewriteApache文档 mod_rewrite备忘单 该mod_rewrite

5.3K00

Apache中 RewriteRule 规则参数介绍

13 个mod_rewrite 应用举例 1.给域名加www标记 RewriteCond %{HTTP_HOST} ^([a-z.]+)?...5.如果文件不存在重定向404页面 如果你主机没有提供404页面定向服务,那么我们自己创建。 RewriteCond %{REQUEST_FILENAME} !...,如果{REQUEST_URI}值为script_that_requires_uniquekey,将会定向URL。...首先,我们为了让搜索引擎更新成新,得将旧URLs重定向格式,但是,我们还得保证以前index.php照样能够运行。是不是被我搞迷糊了?...(secure_page\.php) https://www.taobaoxs.com/ 13.在特定页面上强制执行安全服务 遇到同一个服务器根目录下分别有一个安全服务域名和一个安全服务域名,所以你就需要用

11.8K30

RewriteCond和13个mod_rewrite应用举例Apache伪静态

大家好,又见面了,我是你们朋友全栈君。 1.给域名加www标记 RewriteCond %{HTTP_HOST} ^([a-z.]+)?...5.如果文件不存在重定向404页面 如果你主机没有提供404页面定向服务,那么我们自己创建。 RewriteCond %{REQUEST_FILENAME} !...id=nnnn,不包含marker,所以被第一个规则永久重定向http://www.example.com/nnnn,第二个规则将http://www.example.com/nnnn反定向http...如果这两个条件同时满足,请求将被重定向安全服务URI.另外你可用SERVERPORT做同样测试,443是常用安全服务端口RewriteCond 1 [R=301,L] 以上规则测试{REQUEST_URI...(secure_page.php) https://www.example.com/$1 [R=301,L] 13.在特定页面上强制执行安全服务 遇到同一个服务器根目录下分别有一个安全服务域名和一个安全服务域名

3.9K20

Apache之Rewrite和RewriteRule规则梳理以及http强转https配置总结(完整版)

这时候你可以用以下方式来做到:(Apache mod_rewrite)把这段代码放在.htaccess文件,即可实现HTTPHTTPS定向。.../)、士博学习(/var/www/htmp/shibo-study/)等 3) 对于士博博客http请求,全部定向https博客;对于士博论坛http请求,全部定向https论坛; 最后,解决方案是在...5) 如果文件不存在重定向404页面 如果你主机没有提供404页面定向服务,那么我们自己创建。 RewriteCond %{REQUEST_FILENAME} !...id=nnnn,不包含marker,所以被第一个规则永久重定向http://www.example.com/nnnn,第二个规则将http://www.example.com/nnnn反定向http...(secure_page\.php)$ https://www.kevin.com/$1 [R=301,L] 13) 在特定页面上强制执行安全服务  遇到同一个服务器根目录下分别有一个安全服务域名和一个安全服务域名

30.6K51

如何在Debian 9上使用mod_rewrite为Apache重写URL

在本教程中,您将启用mod_rewrite并使用.htaccess文件来创建基本URL重定向,然后探索几个高级用例。...首先创建一个在Web根目录中命名为about.html文件: sudo nano /var/www/html/about.html 将以下HTML代码复制该文件中,然后保存并关闭它。...例如,假设您希望将所有请求重定向您站点上不存在文件或目录,并将其重定向主页,而不是显示标准404 Not Found错误页面。...这可以通过以下条件规则来实现: 将所有请求重定向不存在文件和目录到主页 RewriteCond %{REQUEST_FILENAME} !...RewriteRule本身非常简单,并将每个请求重定向/网站根目录。 结论 mod_rewrite允许您创建人类可读URL。

4.9K95

如何在Ubuntu 14.04上为Apache设置mod_rewrite

本指南分为两部分:第一部分设置示例Web应用程序,第二部分解释常用重写规则。 准备 一台已经设置好可以使用sudo命令root账号Ubuntu 服务器,并且已开启防火墙。...sudo chmod 644 /var/www/html/.htaccess 您现在有一个操作.htaccess文件来管理Web应用程序路由规则。...我们将从创建一个名为文件开始about.html。 sudo nano /var/www/html/about.html 将以下代码复制HTML页面。...现在注意只有about.html可访问; 如果您尝试访问your_server_ip/about,则会收到Not Found错误。我们希望用户访问about。我们重写规则将允许这个功能。...匹配重写规则时会忽略它们。但是,有时可能需要查询字符串来在页面之间传递数据。

2.4K00

如何在Ubuntu 18.04上使用mod_rewrite for Apache重写URL

在本教程中,您将启用mod_rewrite并使用.htaccess文件来创建基本URL重定向,然后探索几个高级用例。...sudo systemctl restart apache2 mod_rewrite现已完全启用。在下一步中,我们将设置一个.htaccess文件,我们将用它来定义重定向重写规则。...sudo nano /var/www/html/about.html 将以下HTML代码复制该文件中,然后保存并关闭它。...例如,假设您希望将所有请求重定向您站点上不存在文件或目录,并将其重定向主页,而不是显示标准404 Not Found错误页面。...该RewriteRule本身非常简单,并且可以将每个请求重定向/网站根目录。 结论 mod_rewrite允许您创建人类可读URL。

4.3K11

apache rewritecond_hfile数据格式中data字段用于

上面语句作用是如果你访问上一个页面的主机地址是www.test.cn,则无论你当前访问是哪个页面,都会跳转到对test.php访问。...Rewirte模块规则处理 当mod_rewrite在这两个API阶段中开始执行时,它会读取配置结构中配置好 (或者是在服务启动时建立服务器级,或者是在遍历目录采集目录级)规则集,然后...比如,在执行一个外部重定向时, 对一个目录级规则集,你可能需要删除“.www” (此处不应该出现“.www)。...例如[^.]代表通配符。 那么假如我们希望将“http://www.AAA.com/b.php?...1 [R=301,L] 上述规则是将AAA.com 301 www.AAA.com,符号含义相信不必再做解释了。

4.5K10

如何将HTTP重定向Apache上HTTPS

本教程将向您展示如何在Linux中将HTTP重定向Apache HTTP服务器上HTTPS 。...在为您域设置Apache HTTPHTTPS重定向之前,请确保已安装SSL证书,并在Apache中启用mod_rewrite 。 有关如何在Apache上设置SSL更多信息,请参阅以下指南。...重定向Apache上HTTPS 对于这种方法,确保启用了mod_rewrite ,否则在Ubuntu / Debian系统上启用它。...(.*) https://%{SERVER_NAME}/$1 [R,L] 现在,当访问者输入http://www.yourdomain.com ,服务器将自动将HTTP重定向HTTPS https:...通常,启用SSL证书时,虚拟主机配置有两个重要部分; 第一个包含安全端口80配置 。 第二个是安全端口443 。 要将HTTP重定向您网站所有页面的HTTPS,首先打开相应虚拟主机文件。

4.2K20

如何在Debian 8上使用mod_rewrite为Apache重写URL

sudo systemctl restart apache2 mod_rewrite现已完全启用。在下一步中,我们将设置一个.htaccess文件,我们将用它来定义重定向重写规则。...如果您希望用户使用简单方式访问该页面,则可重写规则将允许此功能。...例如,假设您希望将所有请求重定向您站点上不存在文件或目录,并将其重定向主页,而不是显示标准404Not Found错误页面。...这可以通过以下条件规则来实现: 将所有请求重定向主页上不存在文件和目录 RewriteCond %{REQUEST_FILENAME} !...RewriteRule本身非常简单,并将每个请求重定向/ website root。 结论 mod_rewrite是一个有用Apache模块,可以有效地用于确保可读URL。

4.3K20
领券