谈谈我的编程之路---WAMP(三)
WAMP的一些配置与使用心得(APACHE)
说实话,我感觉apache的配置真的还是蛮复杂的,感觉好像又在学一种语言,让我用比较庞大的概念来讲述这些东西,我也没办法做到
就以实际应用出发出发,简单的说一说我的使用过程吧
场景一:你查看服务器访问记录的时候,发现有某一个IP段访问量特别的不正常,疑似黑客入侵,这个时候你需要怎么办?
找到你的http.conf配置文件,找到类似于这样的片段
<Directory "你的网站根目录">
Options Indexes FollowSymLinks
AllowOverride None
Order deny,allow
Deny from XXX.XXX.XXX.XXX
</Directory>
最下面的Deny from 就是你需要屏蔽的IP地址了
场景二:你的服务器下面,有多个网站的目录,而你访问的时候却并不想用 域名/目录 这样的方式,你希望用 二级域名/域名 这样的方式来访问你的多个网站
这个时候你需要允许用到虚拟主机
如何配置apache虚拟主机
首先在http.conf文件中找到# Virtual hosts
把Include conf/extra/httpd-vhosts.conf的注释去掉,当然httpd-vhosts这个文件名是可以修改的,你要是觉得这个名字不好,大可以改成hao-vhosts.conf,只要与vhost目录下的文件名对应就行了
然后需要vhost目录下的httpd-vhosts.conf这个文件中加入这样的设置
<VirtualHost *:80>
DocumentRoot D:/wamp/www
ServerName xxx.xxx.com
DirectoryIndex index.php
</VirtualHost>
DocumentRoot 代表你的网站的绝对路径
ServerName 表示访问该服务器的域名
DirectoryIndex 路径初始文件,利用这个可以默认访问该目录下的index.php
虚拟机可以配置多个,可以解析不同的域名来对应你不同的网站目录
场景三:域名重定向,假设你原来的网站搬家了,原来的地址是www.a.com,但是之后变成了www.a.com/real这个子目录下,如果用户继续请求原有网址没有数据,肯定会拜拜损失用户的,所以有域名重定向功能,当用户访问www.a.com的时候,默认把地址重定向到www.a.com/real这个路径下面,就能很好的解决问题了
如何设置域名重定向呢,首先要在http.conf中做一个设置开启域名重定向,其次你还得懂正则表达式
找到LoadModule rewrite_module modules/mod_rewrite.so 去掉前面的#,
然后在你的网站根目录创建一个.htaccess的文件,这个文件在windows可以用@echo off clear > .htaccess 来创建,linux下直接vim .htaccess就可以了,然后首先要写上
RewriteEngine On 表示重写引擎开启
然后是RewriteCond 定义一条规则条件
然后是RewriteRule 重写规则 例如
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.a.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.b.com [NC]
RewriteRule ^(.*)$ localhost/a/index.php$1 [R=301,L]
R 强制外部重定向,后面可以代301或302跳转。
L 表明当前规则是最后一条规则,停止分析以后规则的重写。(如果满足条件的话)
OR 或的意思,上例中既是www.test.net.cn或test.net.cn开头的域名。
NC 不区分大小写。
$N 引用RewriteRule模板中匹配的相关字串 就是可以保留原域名中的/后面的参数
这种flag有很多,更多详细配置可以阅读官方文档
http://httpd.apache.org/docs/2.2/rewrite/flags.html
感觉写的不是很好吧,毕竟实力有限,我对apache的配置了解的不够深刻,所以没能更加清楚的描述出来,总之这篇文章待续吧
谈谈我的编程之路---WAMP(三)的更多相关文章
- 谈谈我的编程之路---WAMP(四)
WAMP的一些配置与使用心得(windows)W-windows,说到windows,其实大家都最熟悉不过了,GUI(graphic user interface)图形界面就没有什么可说的了,基本会用 ...
- 谈谈我的编程之路---WAMP(二)
WAMP的一些配置与使用心得(MYSQL) 刚开始接触数据库的时候,我一直认为数据库操作工具和数据库是同一种东西,它们是一体的,后来我才明白,数据库它是一个独立的仓库,用官方点的话来解释 数据库(Da ...
- 谈谈我的编程之路---WAMP(一)
WAMP的一些配置与使用心得(PHP) 记得第一次接触PHP的时候,我都不知道PHP为什么要大写,但是我却用它来进行工作了,有时候生活就是一场美丽的邂逅 青涩的我,在ES哥的引领下,第一次接触到了WA ...
- Vue 编程之路(三)—— Vue 中子组件在父组件的 v-for 循环里,父组件如何调取子组件的事件
(标题的解决方案在第二部分) 最近公司的一个项目中使用 Vue 2.0 + element UI 实现一个后台管理系统的前端部分,属于商城类型. 一.前期思路: 其中在“所有订单”页面,UI 给的设计 ...
- 初次踏上GUI编程之路(有点意思,详细介绍了菜鸟的学习之路)
初次踏上GUI编程之路 —— 我的Qt学习方法及对Qt认识的不断转变 -> 开始接触GUI与开始接触Qt: 话说,我第一次看见“Qt”这一个名词,好像是在CSDN网站的主页上吧,因为CSDN好像 ...
- [转]Spark学习之路 (三)Spark之RDD
Spark学习之路 (三)Spark之RDD https://www.cnblogs.com/qingyunzong/p/8899715.html 目录 一.RDD的概述 1.1 什么是RDD? ...
- 杂谈---LZ的编程之路以及十点建议
LZ本人是09年毕业的,在某二流本科院校学的非计算机专业,在兴趣的驱使之下,最终毅然决然的走上了编程这一条“不归路”. 说起LZ的经历虽不算是跌宕起伏,但也真正算是人生无常. 当初09年7月回到家里, ...
- redis成长之路——(三)
redis连接封装 StackExchange.Redis中有一些常功能是不在database对中,例如发布订阅.获取全部key(本代码中已封装到operation中了)等,而且StackExchan ...
- 程序员编程艺术:第三章续、Top K算法问题的实现
程序员编程艺术:第三章续.Top K算法问题的实现 作者:July,zhouzhenren,yansha. 致谢:微软100题实现组,狂想曲创作组. 时间:2011年05月08日 ...
随机推荐
- iOS企业级开发初级课程-UIView与控件(20集)
UIView与控件向大家介绍了视图和控件之间的关系以及应用画面的建构层次.然后是对标签.按钮.文本框.文本视图.开关.滑块.分段控件.网页控件.屏幕滚动控件.等待控件.进度条.警告.动作选单.工具栏. ...
- 新技能get——斜率优化
好久没写博客了……我终于回来了…… dp总是令我很头疼的问题之一,然而我还是要学一下怎么优化它. 下面请看一道题吧: [bzoj3675][Apio2014]序列分割 试题描述 小H最近迷上了一个分割 ...
- 跟着百度学PHP[3]-PHP中结构嵌套之循环结构与条件结构嵌套
任务 有个学生数组存储了学号和姓名,我们需要查找学号为"2014"的学生姓名,这时候我们就需要遍历该数组,并判定学号是否为"201 <?php $student = ...
- 剑指Offer 用两个栈实现队列
题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. 思路: 入队:将元素进栈A 出队:判断栈B是否为空,如果为空,则将栈A中所有元素pop,并push进 ...
- JavaScript深入浅出3-语句
慕课网教程视频地址:Javascript深入浅出 程序由语句组成,语句遵守特定语法规则 块 block {} 没有块级作用域 声明 var 异常 try catch finally 函 ...
- Python PEP8规范
转载自:http://blog.csdn.net/kellyseeme/article/details/50644893 风格指南:http://zh-google-styleguide.readth ...
- 前端之常用标签和CSS初识
外层div的宽度是100%,就是视口的大小,当视口被拉窄到小于内层div的宽度980px时,比如800px,此时 外层div宽度为800px,内层div宽度依然为980px,而css中只设置了外层di ...
- python脚本-开机自动联网
办公室的电脑开机之后,需要打开浏览器登录校园用户认证网页,输入用户名密码登录认证之后才能联网,每次都这样搞很麻烦,写了个Python脚本自动完成这个工作. onStartup.py #file:onS ...
- ThinkPHP在Ubuntu上 : mkdir的使用
问题: 环境:Ubuntu系统,xampp1.8.3-5建站工具 描述:以root的身份运行.Apache的 DocumentRoot = "/var/www" .thinkphp ...
- MySQL高可用性之Keepalived+MySQL(双主热备)
环境描述:OS:CentOS6.5_X64MASTER:192.168.0.202BACKUP:192.168.0.203VIP:192.168.0.204 1.配置两台Mysql主主同步[root@ ...