Apache开启伪静态示例

环境:

系统 Windows

Apache 2.2

加载Rewrite模块:

在conf目录下httpd.conf中找到

LoadModule rewrite_module modules/mod_rewrite.so

这句,去掉前边的注释符号“#”,或添加这句。

允许在任何目录中使用“.htaccess”文件,将“AllowOverride”改成“All”(默认为“None”):

# AllowOverride controls what directives may be placed in .htaccess files.# It can be “All”, “None”, or any combination of the keywords:# Options FileInfo AuthConfig Limit#AllowOverride All

在Windows系统下不能直接建立“.htaccess”文件,可以在命令行下使用“echo a> .htaccess”建立,然后使用记事本编辑。

Apache Rewrite模块的简单应用:

Rewrite的所有判断规则均基于Perl风格的正则表达式,通过以下基础示例能写出符合自己跳转需求的代码。

1、请求跳转

目的是如果请求为.jsp文件,则跳转至其它域名访问。

例如:访问www.clin003.com/a.php跳转至b.clin003.com/b.php网页,访问www.clin003.com/news/index.php跳转至b.clin003.com/news/index.php网页

注意:不是使用HTML技术中的meta或者javascript方式,因为www.clin003.com/a.php这个文件并不存在,用的是Apache2.2服务器中的Rewrite模块。

修改 .htaccess或apche的配置文件httpd.conf文件,添加以下内容

RewriteEngine on#开启Rewrite模块RewriteRule (.*)\.php$ http://b.clin003.com/$1\.jsp [R=301,L,NC]#截获所有.jsp请求,跳转到http://b.clin003.com/加上原来的请求再加上.php。R=301为301跳转,L为rewrite规则到此终止,NC为不区分大小写

2、域名跳转

如果请求为old.clin003.com下的所有URL,跳转至b.clin003.com

RewriteEngine on#开启Rewrite模块RewriteCond %{REMOTE_HOST} ^old.studenthome.cn$ [NC]#针对host为old.clin003.com的主机做处理,^为开始字符,$为结尾字符RewriteRule (.*) http://b.clin003.com/$1 [R=301,L,NC]

3、防盗链

如果本网站的图片不想让其它网站调用,可以在 .htaccess或者apche的配置文件httpd.conf文件中添加以下内容

代码

RewriteEngine on#开启Rewrite模块RewriteCond %{HTTP_REFERER} !^$#如果不是直接输入图片地址RewriteCond %{HTTP_REFERER} !img.clin003.com$ [NC]#且如果不是img.clin003.com所有子域名调用的RewriteCond %{HTTP_REFERER} !img.clin003.com/(.*)$ [NC]RewriteCond %{HTTP_REFERER} !zhuaxia.com [NC]RewriteCond %{HTTP_REFERER} !google.com [NC]RewriteCond %{HTTP_REFERER} !google.cn [NC]RewriteCond %{HTTP_REFERER} !baidu.com [NC]RewriteCond %{HTTP_REFERER} !feedsky.com [NC]RewriteRule (.*)\.(jpg|jpeg|jpe|gif|bmp|png|wma|mp3|wav|avi|mp4|flv|swf)$ http://clin003.com/err.jpg [R=301,L,NC]#截获所有.jpg或.jpeg……请求,跳转到http://clin003.com/err.jpg提示错误的图片,注:该图片不能在原域名下,也不能在该.htaccess文件有效控制的文件夹中

4、不需要定义.htaccess文件

在Apache2\conf\httpd.conf 最后一行添加

RewriteEngine OnRewriteRule ^(.*)-htm-(.*)$ $1.php?$2

重启Apache

登陆后台开启全伪

GD的Linux主机安装discuz 7.2的注意了

这个discuz官方给出的伪静态规则

代码

# 将 RewriteEngine 模式打开RewriteEngine On# 修改以下语句中的 /discuz 为你的论坛目录地址,如果程序放在根目录中,请将 /discuz 修改为 /RewriteBase /discuz# Rewrite 系统规则请勿修改RewriteRule ^archiver/((fid|tid)-[\w\-]+\.html)$ archiver/index.php?$1RewriteRule ^forum-([0-9]+)-([0-9]+)\.html$ forumdisplay.php?fid=$1&page=$2RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ viewthread.php?tid=$1&extra=page\%3D$3&page=$2RewriteRule ^space-(username|uid)-(.+)\.html$ space.php?$1=$2RewriteRule ^tag-(.+)\.html$ tag.php?name=$1

使用这个规则后,你会发现,点击论坛右下角的网站地图“Archiver”,只能看到板块,不能打开板块下的帖子

这是修改后的伪静态规则:

代码

# 将 RewriteEngine 模式打开RewriteEngine On# 修改以下语句中的 /discuz 为你的论坛目录地址,如果程序放在根目录中,请将 /discuz 修改为 /RewriteBase /# Rewrite 系统规则请勿修改RewriteRule ^archiver/([a-z0-9\-]+\.html)$ archiver/index.php?$1RewriteRule ^forum-([0-9]+)-([0-9]+)\.html$ forumdisplay.php?fid=$1&page=$2RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ viewthread.php?tid=$1&extra=page\%3D$3&page=$2RewriteRule ^space-(username|uid)-(.+)\.html$ space.php?$1=$2RewriteRule ^tag-(.+)\.html$ tag.php?name=$1

apache大师+伪静态_Apache开启伪静态示例相关推荐

  1. apache大师+伪静态_Apache配置伪静态

    Apache配置伪静态 注意:本文中关于Apache的配置修改,一定要记得重启Apache服务 伪静态的实现有多种方法,比如通过获取path_info信息使用php逻辑来达到伪静态,使用Apache提 ...

  2. wordpress 主机伪静态404.php seo,wordpress开启伪静态之后,出现404是什么原因?

    wordpress基本算是搭建博客使用最多的开源程序,没有准确数据,毕竟没有做数据深入研究,特别是seoer,所以遇到问题概率比较大的也是wordpress程序,这里说下开启伪静态出现404的问题. ...

  3. 伪静态php配置,PHP开启伪静态配置

    1.检测Apache是否开启mod_rewrite功能 可以通过php提供的phpinfo()函数查看环境配置,找到"Loaded Modules",其中列出了所有apache2h ...

  4. typecho 隐藏index.php,Typecho开启伪静态并隐藏index.php

    Typecho开启伪静态并隐藏index.php 灵曦 • 2019 年 07 月 21 日 前言 Typecho后台设置永久链接后,会在域名后加上index.php,贼不好看 那么我们如何做到这样的 ...

  5. ubuntu 开启伪静态

    参考文章如下: http://www.cnblogs.com/flymood/p/4868401.html 在ubuntu 下的设置方法为: 用命令开启伪静态sudo a2enmod rewrite ...

  6. 苹果cms静态html报404,[苹果CMSV10教程]开启伪静态及问题解决办法

    1.开启伪静态后只能访问首页,打开分类404或者直接跳转到首页. apache的解决方法 解决方法: Options +FollowSymlinks -Multiviews RewriteEngine ...

  7. 服务器宝塔怎么开启php5.4伪静态,WeCenter在宝塔面板LNMP环境下开启伪静态方法

    WeCenter这款程序相信很多站长都使用过,风格类似于知乎社区,是一款体验很不错的程序.正好博主想要搭建一个论坛,用过DZ程序,还用过很多的轻论坛程序,最后博主想要试下WeCenter程序.在搭建的 ...

  8. IIS开启伪静态后html静态页面无法访问的解决方法

    IIS开启伪静态后,发现原本存在的html静态页面无法访问了,显示的404错误.网上查了下,是因为实现伪静态就是使用 URLRewriter 来映射后缀,会把asp等动态页面映射成html,但是原来存 ...

  9. php空间开启伪静态,php虚拟主机开启伪静态(虚拟主机伪静态规则配置)

    伪静态是相对真实静态来说的,有时我们为了更好增强搜索引擎的友好面,通常将一些动态页面(如PHP.ASP等)设置成伪静态页面.在HostEase虚拟主机中我们可以. 关于php开源程序的伪静态设置,怎么 ...

最新文章

  1. apache服务器配置证书方法!
  2. linux生成公钥实现ssh,linux下生成 SSH 公钥,用于GitHub
  3. 阿里云 fatal: Authentication failed 退出码 128
  4. mysql exporter_mysql exporter
  5. java update 8_版本任你发,我用Java 8!JDK的更新,改变了哪些你写代码的方式?...
  6. git的一些简单用法
  7. python字符串isalnum()函数
  8. eoe android 短信长度限制 70,为什么手机短信要限定70个汉字?其实答案在这里!...
  9. 名片识别信息分类python_名片识别API接口_免费数据接口 - 极速数据
  10. 华为NP课程笔记7-BGP1
  11. PEmicro GDB Launch Failure : Could not bind socket.
  12. 自相关函数 互相关函数 平稳随机过程
  13. U盘插入电脑说要格式化,但电脑又说“磁盘被写保护,无法格式化”,如何解决
  14. 计算机专业建设会议纪要,智能控制教研室会议纪要6号
  15. Cesium 绘制不同的形状(Entity)
  16. [IT学习]阿铭Linux 微信公众号 每日一题 解析
  17. 2019 MySQL 8 安全安装避坑指南
  18. linux环境下从路径字符串中截取目录和文件名信息
  19. 攻防世界web新手区合集
  20. CorelDRAWX4的VBA插件开发(十)多文件编程

热门文章

  1. Sublime Text3(mac)一些插件和快捷键
  2. 【bzoj1738】[Usaco2005 mar]Ombrophobic Bovines 发抖的牛 Floyd+二分+网络流最大流
  3. 提交app时候90475,90474
  4. Java中,String类型和包装类型作为参数传递时,是属于值传递还是引用传递呢?...
  5. Google Maps API 简易教程(四)
  6. 学习Duwamish7的MSDN说明及相关技术策略
  7. 柔性数组和环形队列之间的故事
  8. android之APP模块编译
  9. python 默认参数_有趣的 Python 特性 3 | 当心默认可变参数这个大猪蹄子。
  10. Java的Class类文件结构及基本字节码指令