Apache主机rewrite地址重写相关的参数

Apache Rewrite 重定向问题汇总 apache 的 rewrite模块 用了也有段时间了。每次都是先从历史中找资料修改。今天腾出点时间整理下和大家分享一下,其实rewrite规则超多,我也没有全部理解,实践中我用的一些列出来,相信一般应用的朋友足够了  为什么需要用重写规则? 他人总结:一个网站,如果是长期需要放在internet上提供服务,必定会有不断地更新和维护,如临 时转移到其它服务器进行维护,重新组织目 阅读详情

对于Zend Framework ,必须在 index.php 路由前添加:

if(!empty($_SERVER["REDIRECT_URL"]))$_SERVER["REQUEST_URI"]=$_SERVER["REDIRECT_URL"];

 

Apache mod_rewrite规则重写的标志一览

R[=code](force redirect) 强制外部重定向
强制在替代字符串加上http://thishost[:thisport]/前缀重定向到外部的URL.如果code不指定,将用缺省的302 HTTP状态码。
F(force URL to be forbidden)禁用URL,返回403HTTP状态码。
G(force URL to be gone) 强制URL为GONE,返回410HTTP状态码。
P(force proxy) 强制使用代理转发。
L(last rule) 表明当前规则是最后一条规则,停止分析以后规则的重写。
N(next round) 重新从第一条规则开始运行重写过程。
C(chained with next rule) 与下一条规则关联
如果规则匹配则正常处理,该标志无效,如果不匹配,那么下面所有关联的规则都跳过。
T=MIME-type(force MIME type) 强制MIME类型
NS (used only if no internal sub-request) 只用于不是内部子请求
NC(no case) 不区分大小写
QSA(query string append) 追加请求字符串
NE(no URI escaping of output) 不在输出转义特殊字符
例如:RewriteRule /foo/(.*) /bar?arg=P1\%3d$1 [R,NE] 将能正确的将/foo/zoo转换成/bar?arg=P1=zed
PT(pass through to next handler) 传递给下一个处理
例如:
RewriteRule ^/abc(.*) /def$1 [PT] # 将会交给/def规则处理
Alias /def /ghi
S=num(skip next rule(s)) 跳过num条规则
E=VAR:VAL(set environment variable) 设置环境变量

使用mod_rewrite时常用的服务器变量:
HTTP headers:HTTP_USER_AGENT, HTTP_REFERER, HTTP_COOKIE, HTTP_HOST, HTTP_ACCEPT
connection & request: REMOTE_ADDR, QUERY_STRING
server internals: DOCUMENT_ROOT, SERVER_PORT, SERVER_PROTOCOL
system stuff: TIME_YEAR, TIME_MON, TIME_DAY

RewriteRule规则表达式的说明:
    . 匹配任何单字符
    [chars] 匹配字符串:chars
    [^chars] 不匹配字符串:chars
    text1|text2 可选择的字符串:text1或text2
    ? 匹配0到1个字符
    * 匹配0到多个字符
    + 匹配1到多个字符
    ^ 字符串开始标志
    $ 字符串结束标志
    \n 转义符标志

反向引用 $N 用于 RewriteRule 中匹配的变量调用(0 <= N <= 9)
反向引用 %N 用于 RewriteCond 中最后一个匹配的变量调用(1 <= N <= 9)

RewriteCond适用的标志符
‘nocase|NC’ (no case)忽略大小
‘ornext|OR’ (or next condition)逻辑或,可以同时匹配多个RewriteCond条件

RewriteRule适用的标志符
‘redirect|R [=code]’ (force redirect)强迫重写为基于http开头的外部转向(注意URL的变化) 如:[R=301,L]
‘forbidden|F’ (force URL to be forbidden)重写为禁止访问
‘proxy|P’ (force proxy)重写为通过代理访问的http路径
‘last|L’ (last rule)最后的重写规则标志,如果匹配,不再执行以后的规则
‘next|N’ (next round)循环同一个规则,直到不能满足匹配
‘chain|C’ (chained with next rule)如果匹配该规则,则继续下面的有Chain标志的规则。
‘type|T=MIME-type’ (force MIME type)指定MIME类型
‘nosubreq|NS’ (used only if no internal sub-request)如果是内部子请求则跳过
‘nocase|NC’ (no case)忽略大小
‘qsappend|QSA’ (query string append)附加查询字符串
‘noescape|NE’ (no URI escaping of output)禁止URL中的字符自动转义成%[0-9]+的形式。
‘passthrough|PT’ (pass through to next handler)将重写结果运用于mod_alias
’skip|S=num’ (skip next rule(s))跳过下面几个规则
‘env|E=VAR:VAL’ (set environment variable)添加环境变量

实战
    例子:
    RewriteEngine on
    RewriteCond %{HTTP_USER_AGENT} ^MSIE [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} ^Opera [NC]
    RewriteRule ^.* - [F,L] 这里”-”表示没有替换,浏览器为IE和Opera的访客将被禁止访问。

    例子:
    RewriteEngine On
    RewriteBase /test
    RewriteCond %{REQUEST_FILENAME}.php -f
    RewriteRule ([^/]+)$ /test/$1.php
    #for example: /test/admin => /test/admin.php
    RewriteRule ([^/]+)\.html$ /test/$1.php [L]
    #for example: /test/admin.html => /test/admin.php

    限制目录只能显示图片
    < IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} !^.*\.(gif|jpg|jpeg|png|swf)$
    RewriteRule .*$ - [F,L]
    < /IfModule>

 

 

Ubuntu 14.04 Apache mod_rewrite 完整激活指南 URL重写是Web服务器的核心能力之一,其底层依赖Apache的mod_rewrite模块——一个需显式加载、授权与启用的多层控制机制。在Ubuntu 14.04(Apache 2.4.7)中,该模块默认禁用,且受Debian-style模块管理、AllowOverride权限策略及RewriteEngine作用域开关三重约束。掌握其原理不仅关乎WordPress永久链接、Laravel路由等常见场景的正常运行,更是保障前后端分离history模式、API版本路由等现代架构落地的基础。本文聚焦于真实生产环境 阅读详情

相关推荐

Apache mod_rewrite实战指南:从URL重写到生产级规则配置

URL重写是Web服务器路由控制的核心技术,其本质是通过正则匹配与条件判断,在请求处理早期动态修改请求路径或发起重定向。mod_rewrite作为Apache最常用且最易出错的模块,其原理根植于请求生命周期中的rewrite阶段,技术价值在于解耦前端友好URL与后端真实资源路径,支撑SEO优化、单页应用(SPA)路由、多域名管理等关键场景。本文聚焦Apache 2.4.x环境下mod_rewrite的真实工程实践,深入解析RewriteEngine状态继承、RewriteCond条件决策机制、Rewrite

dezhen7015的博客 429

rewrite 规则实战案例

最后于C:\Windows\System32\drivers\etc中添加hosts即可实现访问www.jf1.com或者www.jf2.com 跳转至www.jfedu.net。RewriteCond % {HTTP _HOST} " jfedu. net [NC]:匹配以 jfedu. net 开头的域名,NC 忽略大小写。至此即可实现访问 www. jfedu. net 首页,跳转至www.jfedu.net/newindex。)表示任意字符串 $1表示引用( .*)的中任意内容。

fubingxing的博客 812

Debian 8下Apache mod_rewrite生产级配置实战

URL重写是Web服务路由控制的基础能力,其核心原理在于Apache请求处理生命周期中的URI转换阶段。通过mod_rewrite模块,开发者可实现301跳转、SEO友好路径、参数隐藏等关键功能,技术价值体现在流量平滑迁移、搜索引擎权重保留与架构解耦上。典型应用场景包括老旧PHP系统URL重构、多语言站点路由、域名标准化及反向代理适配等。本文聚焦Debian 8(Apache 2.4.10)这一长期服役的生产环境,深入解析mod_rewrite启用机制、RewriteEngine开关位置、AllowOver

weixin_34007020的博客 357

Apache Rewrite 规则详解

在开篇之前:我想说这篇文章其实是我刚刚接触Rewrite的时候学习的文档,应属转载,但是在这里我不想写明原地址,原因是文章中大多数给出的配置命令经实验都是错误的。需要原文的可以在谷歌上搜索一下”Apache Rewrite 规则详解”好在我对正则表达式有所了解,把原文的代码都通过自己的理解改写了一下,并都能够达到题设的要求,并联想需求添加了例子。本文是经过我实验后修改有效的,如果还是出现500错误

luinstein的专栏 1116

Ubuntu 16.04 Apache mod_rewrite URL重写实战指南

URL重写是Web服务器基础能力之一,本质是请求路径在应用层的动态映射与转换,其核心原理依赖正则匹配、条件判断和内部重定向机制。该技术具备零侵入业务代码、不重启服务、兼容老旧架构等独特工程价值,在SEO优化、API版本路由、多语言支持、安全路径屏蔽等场景中不可替代。尤其在Ubuntu 16.04这类长期支持(LTS)系统中,Apache 2.4内置mod_rewrite模块配合.htaccess灵活配置,成为运维人员应对遗留系统升级受限、PHP扩展绑定严苛等现实约束的关键手段。本文聚焦RewriteRule

weixin_33749242的博客 315

Apache的URL重写规则详解及标志说明

URL重写是指将URL地址进行修改或重定向,以便更好地满足网站需求或提供更友好的URL结构。Apache的URL重写规则和标志提供了强大的功能,可以实现各种URL重写和重定向需求。通过合理利用这些标志,可以灵活地控制URL的处理方式,提供更友好和符合需求的URL结构。其中,模式是一个正则表达式,用于匹配URL路径部分,目标是要重写或重定向到的URL地址,标志是可选的,用于控制重写规则的行为。这条规则将会将所有的URL重定向到index.php文件,[L]标志表示这是最后一个规则。表示跳过后续规则的处理。

IsdCoding的博客 698

apache rewrite规则(RewriteCond,RewriteRule)

RewriteCond指令格式 语法: RewriteCond TestString CondPattern [flags] RewriteCond指令定义一条规则条件。在一条RewriteRule指令前面可能会有一条或多条RewriteCond指令,只有当自身的模板(pattern)匹配成功且这些条件也满足时规则才被应用于当前URL处理。 1、 TestString是一个纯文本的字符串,除

ylspirit 850

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

本篇文章详细介绍了Apache之Rewrite和RewriteRule规则以及http强转https的配置总结,可作为平时运维手册.特此分享,希望能帮助到有用到的朋友!

Rewrite和RewriteRule规则,http强转https的配置总结

RewriteEngine On RewriteBase / RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://blog.shibo.com/$1 [R=301,L]

stwood007的博客 6052

apache rewrite规则实现白名单

今天弄了半天apache 的rewrite 规则,还是没有配置出符合的规则。后一同事,研究了半个小时弄出来,很是惭愧。

apache的rewrite规则使用说明

主要介绍了apache的rewrite规则使用说明,并带有参考示例,需要的朋友可以参考下

Nginx--地址重写Rewrite

Rewrite对称URL Rewrite,即URL重写,就是把传入Web的请求重定向到其他URL的过程URL Rewrite最常见的应用是URL伪静态化,是将动态页面显示为静态页面方式的一种技术。比如id=123使用URLRewrite 转换后可以显示为对于追求完美主义的网站设计师,就算是网页的地址也希望看起来尽量简洁明快。理论上,搜索引擎更喜欢静态页面形式的网页,搜索引擎对静态页面的评分一般要高于动态页面。所以,UrlRewrite可以让我们网站的网页更容易被搜索引擎所收录。

m0_74823434的博客 1032

c语言实现语音检测vad_壹鸽技术科普·智能语音客服系统中的前端语音处理技术...

随着智能客服机器人产业的迅速发展,尤其是伴随着人工智能AI的风潮,预计在2020年我国智能客服市场将达到万亿级别。在智能客服机器人领域中对电话信道语音进行端点检测处理的应用正在不断扩展和深化。目前语音端点检测(Voice Active Detection,简称VAD)的主要任务是准确快速判决出待处理的语音信号有话还是无话,作为自动语音识别(Automatic Speech Recognition,...

weixin_36431018的博客 508

Apache mod_rewrite实战:从500错误到可调试重写系统

URL重写是Web服务器处理请求的核心机制之一,其本质是在Apache请求处理流水线的URI-to-filename阶段对请求路径进行动态干预。理解RewriteEngine开关背后的模块加载、作用域继承与Phase介入时机,是解决规则不生效、500报错等常见问题的前提。mod_rewrite的价值不仅在于跳转或伪静态,更在于通过RewriteCond条件判断与RewriteRule动作组合,实现基于HTTP上下文(如HOST、REQUEST_URI、文件存在性)的精准路由控制。它广泛应用于SPA前端路由支

weixin_33739541的博客 380

核磁分析必备,ACD/Labs软件使用全解析

核磁共振(NMR)是化学分析中的重要工具,而ACD/Labs提供了一套强大的软件解决方案。从实验设计到数据解读,ACD/Labs 的 NMR 预测可以显著加快您的工作流程。使用 ACD/NMR 预测可以:根据化学结构预测 1H、13C、15N、19F 和 31P 核的全套 1D 和 2D NMR 光谱;在几秒钟内计算化学位移和耦合常数;利用内部数据训练算法,提高新化学空间的准确性。

a13981820402的博客 5635

避坑指南:Ubuntu 22.04上源码编译Autoware.universe(Humble版)的完整流程与常见错误修复

本文详细介绍了在Ubuntu 22.04上源码编译Autoware.universe(Humble版)的完整流程与常见错误修复方法。从环境准备、依赖安装到编译优化,提供了实用的避坑指南和解决方案,帮助开发者高效完成安装并避免常见问题。特别针对源码安装过程中的疑难杂症给出了具体修复建议。

weixin_33712987的博客 382

Debian 10 Apache mod_rewrite 实战:从启用到安全重写

URL重写是Web服务器的核心能力之一,其本质是通过请求路径的动态映射实现路由控制、安全加固与用户体验优化。在Apache中,mod_rewrite作为内建重写引擎,需先启用模块、配置AllowOverride权限,并结合RewriteEngine上下文声明才能生效。它不仅支撑SEO友好的clean URL,更承担HTTPS强制跳转、WordPress伪静态、API版本路由、敏感文件防护及简易WAF过滤等关键任务。尤其在Debian 10系统中,受限于默认禁用.htaccess、AppArmor访问控制及严

409

【机器学习入门】1.4 吃透这些基本术语,才算真正入门

本文通过"挑西瓜"的生活案例,形象解释了机器学习的基本术语。样本对应单个西瓜,特征如色泽、根蒂等是观察维度,特征值是其具体表现,标签是西瓜的好坏判断。数据集是样本集合,特征向量是样本的数学表达,特征空间是所有可能的样本组合。文章强调数据集需划分为训练集、验证集和测试集,以评估模型的泛化能力。最后整理了术语对照表,并解答了常见问题。这些基础概念是理解机器学习的关键,建议读者重点掌握。

国科大硕士在读,分享Python/GEE/Matlab/R专业代码实践,涵盖数据分析、算法开发与应用技巧等,以代码会友。 655

Ubuntu 20.04 Apache mod_rewrite 实战:URL重写与重定向原理

URL重写是Web服务器实现SEO友好、RESTful路由和前后端解耦的核心能力。其底层原理依赖Apache的请求处理生命周期与正则匹配机制,在Ubuntu 20.04默认的Apache 2.4环境中,需特别关注AllowOverride权限配置与mod_rewrite模块加载状态。技术价值在于零代码改造即可统一URL形态、保障搜索引擎权重平滑迁移,并支撑WordPress、Laravel等主流框架的permalink功能。典型应用场景包括.html后缀隐藏、旧链接301跳转、子目录路径标准化及查询参数控制

cucanqi9387的博客 417

模板匹配加速之金字塔分层搜索

图像金字塔是一种多分辨率图像表示方法,它通过一系列逐渐缩小或放大的图像来表示原始图像的不同尺度。高斯金字塔(Gaussian Pyramid):通过不断下采样(降采样)生成更小的图像。拉普拉斯金字塔(Laplacian Pyramid):通过高斯金字塔和差分操作生成一组残差图像。在模板匹配中,我们主要使用高斯金字塔来实现多尺度匹配。金字塔灰度模板匹配通过多尺度搜索策略,在保持较高准确率的同时显著提升匹配速度,尤其适用于:高分辨率图像处理实时检测系统移动端设备等资源受限场景。

weixin_44969144的博客 1732

【华为OD机试真题】3、 路灯照明问题 | 机试真题+思路参考+代码解析(C++、Java、Py、C语言、JS)

题目描述 >在一条笔直的公路上安装了N个路灯,从位置0开始安装,路灯之间间距固定为100米。 每个路灯都有自己的照明半径,请计算第一个路灯和最后一个路灯之间,无法照明的区间的长度和。

KJ.JK 1万+

Apache Web服务器企业实战(Rewrite重写规则)

万维网(world wide web,WWW)服务器,也称之为Web服务器,主要功能是提供网上信息浏览服务。WWW是Internet的多媒体信息查询工具,是Internet上飞快发展的服务,也是目前应用最广泛的服务。这是因为有了WWW软件,才使得近年来Internet迅速发展。 目前主流的Web服务器软件包括Apache,Nginx,Lighttpd,IIS,Resin,Tomcat,WebLogic,Jetty等。 本章向大家介绍Apache服务器发展历史,Apache工作模式深入剖析,Apcche虚

仅有的限量版宝藏男孩儿 759

【重识云原生】第四章云网络4.9.5.1节下一代智能网卡——DPU综述

随着数据中心的高速发展,通信能力和计算能力成为数据中心基础设施的相辅相成的两个重要发展方向。若数据中心仅关注计算能力的提升,通信基础设施的提升跟不上,那么数据中心的整体系统性能依然受限,无法发挥出真正的潜力。DPU的提出背景就是应对这些数据量和复杂性的指数级增长。未来,需要将计算移至接近数据的位置,这是目前业界所公认的以数据为中心的体系结构下的创新。综上,DPU对数据中心来说,是通过更明细的分工来实现效率的提升、实现总体系统的成本最优化。...

junbaozi的专栏 1725

Ubuntu 14.04下Apache mod_rewrite启用与权限配置全解析

mod_rewrite是Apache核心的URL重写引擎,工作在请求处理早期阶段,用于路径映射、重定向和请求干预。其原理依赖模块加载、上下文授权(AllowOverride)、规则语法(Apache 2.4新范式)及执行阶段控制。技术价值在于实现伪静态、动态路由、安全加固与轻量API网关等能力。典型应用场景包括WordPress固定链接、HTTPS强制跳转、移动端分流和防盗链保护。但在Ubuntu 14.04这一Apache 2.4.7深度定制版本中,必须同步解决a2enmod加载、虚拟主机RewriteE

weixin_34314962的博客 474

安装anaconda3时出现错误:Failed to link extracted packages to D:\anaconda!...如何解决?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值 。

**My Coding Family** 1481

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

nginx rewrite 的语法

原文 http://www.cnblogs.com/cgli/archive/2011/05/16/2047920.html,感觉顺序不太合理,做了些修改,没有标明含义的例子也删除了 Nginx Rewrite规则相关指令 Nginx Rewrite规则相关指令有if、rewrite、set、return、break等,其中rewrite是最关键的指令。 rewrite 的语法 语法

aigoleague的专栏 1万+

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

上一篇: 配置 magic_quotes_gpc = off 无效的解决方法
下一篇: PHP构建不依赖于cookie的手机端用户登录配置,url_rewriter.tags设置
xmlife
博客等级 码龄19年 89粉丝 55原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值