Linux:WebServer(Apacge)
- / + 内容:表示在文本中搜索该内容;
- :q!:不保存直接退出;
- chown -R imooc:imooc /data:将 /data 文件夹的权限所有人该为用户 imooc;
- -R:采用递归的方式;
- /data 文件夹下的所有文件的权限都为用户 imooc;
- sudo su + 用户名:切换用户;
一、简介
- WebServer:web 服务器;
- WebServer 中常用的两款软件:NGINX、APACHE;
- WebServer 默认是 80 端口;(也可以改成其它端口)
- WebServer 启动后,可以通过浏览器直接访问服务器的 80 端口;
- 服务器通过 80 端口提供服务,用户通过浏览器访问服务器的 80 端口类接受服务;
- 网络统计:netstat -anpl | grep 'http',可以查看完了端口等信息;
二、Apache
1)Apache 的简单命令
- ps -ef | grep httpd:查询 httpd 是否存在;
- service httpd restart:重启WebServer;
2)Apache 的虚拟主机配置及伪静态操作
- A)虚拟主机的作用:虚拟主机一般在配置多域名的时候使用,比如在一个服务器上配置多个网站,需要有多个配置保证每一个域名访问的网站的内容和源代码是不一样的。
- /etc/httpd/conf:存放配置文件;
- /etc/httpd/conf.modules.d:存放配置文件模块的配置文件;
- /etc/httpd/modules:存放各种模块,将不同的模块添加到配置文件 httpd.conf 中时,会实现不同的功能;
B)模块使用方式
- 进入配置文件所在的目录:cd /etc/httpd/conf;
- 在 conf 文件夹下的 httpd.conf 文件中进行配置:vim httpd.conf;
- 在 httpd.conf 文件中搜索找到虚拟主机配置位置:/LoadModule;
- 在 “LoadModule foo_module modules/mod_foo.so” 这一行下添加模块:LoadModule 模块 modules/模块;
C)/etc/httpd/conf/httpd.conf:配置文件
- Listen:监听的服务器端口;
- Include conf.modules.d/*.conf:加载模块的格式,* 表示任意字符;
- DocumentRoot " path/html ":默认代码所在的根目录;(也可以为其它目录,配置虚拟主机就是为了可以随意配置代码目录放到任何地方)
D)虚拟一个主机配置:
- 进入配置文件所在的目录:cd /etc/httpd/conf;
- 在 conf 文件夹下的 httpd.conf 文件中进行配置:vim httpd.conf;
- 在 httpd.conf 文件中搜索找到虚拟主机配置位置:/virtual;
- 开始配置:
- 重启 WebServer ;
- *:80:服务器接口为 80 端口;
- ServerName:域名;
- DocumentRoot:html 代码存放的目录;
- <Directory "/data/www">:关键字,html 代码所在目录;
- Require:访问权限,all granted 表示对所有人授权;
- 如果需要配置多个虚拟主机,则设置多个:<VirtualHost>;
E)设置访问限制:vim /etc/selinux/config
- SELTNUX=enforcing:强制模式;
- SELTNUX=permissive:宽容模式;
- SELTNUX=disabled:不设置任何限制;
- setenforce 0:表示临时打开端口接受浏览器访问;(临时操作,重启 WebServer 后又恢复默认设置)
- setenforce 1:表示临时关闭端口拒绝浏览器访问;
- 根据域名访问服务器内容:域名 + HTML文件,访问 DlcumentRoot 指定的文件夹下的具体文件代码(一般为 HTML 代码,也可以是PHP 代码);
- 配置好主机,将域名解析对应服务器 IP 后,可以通过浏览器输入配置的域名(也就是网址)来访问服务器(一般为 80 端口),得到服务器提供的服务(也就是打开 DocumentRoot 指定的文件夹下的 html 代码);
- 只有被互联网认可的域名(也就是合法的网址)才能被浏览器访问;
F)伪静态
- 解释:实际上就是改变浏览器访问服务器的内容;(相当于是网页跳转)
- 例如,通过伪静态设置后,只要网址是:域名 + *.htmp,都自动访问 “域名 + test.html ”;
伪静态设置:也是在虚拟主机配置中设置;(借助 rewrite_module 模块实现)
- 在配置文件的 <Directory> 中添加:IfModule mo_rewrite.c;
- <IfModule mod_rewrite.c>:如果添加了 mod_rewite.c 模块,则执行其下的内容;
- RewriteRule ^(.*)htmp test.html:如果配置文件 httpd.conf 中添加了 mod_rewrite.c 模块,将所有网址中(域名 + 代码文件目录),域名后缀是 htmp 的网址,都访问 test.html 文件中的代码内容;
Linux:WebServer(Apacge)的更多相关文章
- linux:RAID(磁盘阵列)笔记
RAID磁盘阵列简述: RAID0(条带): 把多个同样大小的磁盘串联起来当做一个磁盘来用. 优点:读写速度快. 缺点:数据容易丢失(没有容错能力). ...
- Linux:WebServer(Nginx 虚拟主机配置与伪静态实现)
ps + 查看方式 | grep + 服务/端口/软件等:查看状态: 一.基本操作 Nginx 多用于商业系统: 一个端口只能被一个服务使用: Nginx 可以同时监听多个端口,也就是配置时, ...
- Linux:打印(输出)所有的列(awk, $0)
如果想输出所有的列的话,只需要$0这个函数,例如以下命令: awk '/rs16945916/ {print $0}' test.txt > allcol.txt rs16945916指的是打印 ...
- .NET跨平台实践:用C#开发Linux守护进程(转)
Linux守护进程(Daemon)是Linux的后台服务进程,它脱离了与控制终端的关联,直接由Linux init进程管理其生命周期,即使你关闭了控制台,daemon也能在后台正常工作. 一句话,为L ...
- 嵌入式Linux开发教程:Linux常见命令(上篇)
摘要:这是对周立功编著的<嵌入式Linux开发教程>的第7期连载.本期刊载内容有关LinuxLinux常见命令中的导航命令.目录命令和文件命令.下一期将连载网络操作命令.安装卸载文件系统等 ...
- Linux usb子系统(二):USB设备驱动usb-skeleton.c
usb驱动分为通过usbfs操作设备的用户空间驱动,内核空间的内核驱动.两者不能同时进行,否则容易引发对共享资源访问的问题,死锁!使用了内核驱动,就不能在usbfs里驱动该设备. 下面转载的一篇分析u ...
- Linux磁盘分区(二):删除
***********************************************声明************************************************ 原创 ...
- Linux磁盘分区(一):添加
***********************************************声明************************************************ 原创 ...
- CentOS 7.4 初次手记:第一章 Linux守护进程(daemon)
第一节 init & sysvinit 6 I sysvinit 运行顺序... 6 II Sysvinit和系统关闭... 7 III Sysvinit 的小结... 7 IV 运行级别.. ...
随机推荐
- Centos6安装MariaDB-yum方式
1.创建安装目录: mkdir /data/mysql/ mkdir /data/mysql/datafile mkdir /data/mysql/logfile 2.创建用户: useradd -r ...
- gridview 后台增加列
BoundField field1 = null; field1 = new BoundField(); //实例化 field1.HeaderText = "序号";field ...
- win10 downloader.exe 修复方法
由于系统更新是和系统密切相关的,在日常使用中某些系统文件如果出现损坏,同样会导致系统更新无法成功安装.如果在使用Windows 10时可以成功下载更新,但是安装的时候出错,此时就需要对系统文件进行检查 ...
- 使用JQuery Deferred对象的then() 解决多个AJAX操作顺序依赖的问题
原文地址:http://www.2cto.com/kf/201507/424202.html 之前的文章javascript异步代码的回调地狱中提到了编写AJAX代码经常遇到的3个问题,现在我们看下如 ...
- thinkphp3.1 多表联合查询代码
php代码 public function info(){ $where['openid']=session('openid');////用户session $db = M("pay&quo ...
- ThinkPHP 连接数据库
今天在配置连接Mysql 时出现了bool(false)的提示,仔细修改了mysql的密码,还是不对,发现问题应该数据库本身设置了前缀tb_本身的拼写错误和注释掉了 'DB_PREFIX'=>' ...
- I2S音频总线学习(二)I2S总线协议
http://blog.csdn.net/ce123_zhouwei/article/details/6919954
- Android 框架学习2:源码分析 EventBus 3.0 如何实现事件总线
Go beyond yourself rather than beyond others. 上篇文章 深入理解 EventBus 3.0 之使用篇 我们了解了 EventBus 的特性以及如何使用,这 ...
- 【排序】归并排序,C++实现
原创文章,转载请注明出处! 博客文章索引地址 博客文章中代码的github地址 # 基本思想(分治法) 归并排序中, “归”代表递归的意思,即递归的将数组通过折半的方式分离为单个数组. “ ...
- linux下环境变量PATH设置错误的补救
本文转自: http://blog.clzg.cn/blog-614449-740527.html 之前不小心在/etc/profile中添加了错误的PATH变量,导致几乎所有的系统命令无法使用 ...