websever安装配置

Nginx & Apache

并发量。

Apache基本操作

解释 命令
安装 yum install httpd
启动 service httpd start
停止 service httpd stop

centos中它叫httpd。ubuntu中就叫Apache

虚拟主机 伪静态

sudo install httpd
sudo service httpd start
ps -ef|grep httpd
sudo service httpd restart

此时进入浏览器访问无法访问到我们的Apache。

sudo netstat -anpl | grep http

可以看到端口运行也是正常的。

防火墙机制。关闭防火墙

sudo service firewalld stop

此时通过http://192.168.0.7/可以访问到我们的Apache页面

虚拟主机

我们一个网站服务器希望有很多不同的域名

cd /etc/httpd/
ls
cd conf
vim httpd.conf

config.d 是配置文件 。config.modules.d是配置模块的文件。

mark

监听80端口,模块下的任意conf文件

mark

根目录是放在var/www/html

搜索virtual 。esc之后输入"/virtual"回车

<VirtualHost *:80>
ServerName www.mtianyan.test
DocumentRoot /data/www
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride None
</Directory>
</VirtualHost>

配置我们的域名和根目录

 sudo service httpd restart

重启httpd服务。

mkdir -p data/www

添加-p参数新建级联目录。

data目录所属用户是在root账号。如果对于目录的操作权限不够可以使用

sudo chown -R mtianyan:mtianyan /data

chown 改变文件或目录所有者。-R是递归的方式。

此时无法访问。我们的域名是虚构的,所以需要使用host

sudo vim /etc/hosts

C:\Windows\System32\drivers\etc

此时访问仍然是Apache的页面。

cd /etc/httpd/
cd logs/

权限禁止。

sudo su -
  • 是一个环境变量切换到root用户

报错:

[Sat Jan 27 15:41:15.482043 2018] [authz_core:error] [pid 4847] [client 192.168.0.12:11981] AH01630: client denied by server configuration: /data, referer: http://www.mtianyan.test/
sudo setenforce 0

系统关于安全的一个设置。0宽松模式

sudo vim /etc/selinux/config

修改为disabled宽松模式。

伪静态: .html看起来像是静态的。

/loadMoudle

mod_rewrite

mark

Nginx基本操作

解释 命令
安装 yum install nginx
启动 service nginx start
停止 service nginx stop
重载 service nginx reload

虚拟主机

yum install nginx
yum search nginx
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
sudo yum install -y nginx

reload是一种无缝的重载。

 cd /etc/nginx
sudo vim nginx.conf
cd conf.d
sudo vim default.conf
sudo cp default.conf mtianyan.conf

新建一个我们自己的配置文件.mtianyan.conf

内容如下;

server {
listen 80;
server_name www.mtianyan.test; #charset koi8-r;
#access_log /var/log/nginx/host.access.log main; location / {
root /data/www;
index index.html index.htm;
}
}

不能同时启动nginx和Apache。可以看到

Redirecting to /bin/systemctl start nginx.service
Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.
sudo systemctl status nginx.service

执行提示我们执行的命令之后我们可以看到提示80端口已经被占用。

一个端口只能被一个服务器所使用。

多域名多端口

多端口

    listen       80;
listen 9999;

多域名

server_name  www.mtianyan.test www.mtianyan2.test;

伪静态

location/ {
rewrite ^(.*)\.htmp$ /index.html;
}

任意的以.htmp结尾的都去index.html

\代表转义。

日志格式化

nginx.conf文件进行日志格式化

log_format

mark

mark

自己新建的日志格式要保存一致。

希望自己的虚拟主机的日志存放在自己自定义位置mtianyan.conf中 server下

access_log /var/log/nginx/

反向代理和负载均衡

请求网站是代理返回过来的。我们请求nginx, nginx向另一台服务器请求资料。

负载均衡。网站请求量比较大,两台机器一起服务。

演示:

  1. 将我们的rewrite注释掉
upstream mtianyan_hosts{
server 192.168.0.7:80 weight=5;
server 192.168.0.8:80 weight=1;
} server{ location /{
proxy_set_header Host blog.mtianyan.cn
proxy_pass http://mtianyan_hosts;
}
}

轮流进行发送请求。以5比1的比例。负载均衡解决网站压力分流。

调试技巧

看配置是否出错。

add_header Content-Type "text/plain;charset=utf-8";
return 200 "$http_host";

回顾

httpd

service 启动 关闭 停止

虚拟主机 伪静态 rewrite

virtual

nginx reload

多域名多端口,伪静态。诶之格式化nginx.conf log_format

反向代理 & 负载均衡。

快速玩转linux(4)的更多相关文章

  1. 快速玩转linux(1)

    快速上手Linux玩转典型应用 mark 大牛都会使用Linux, Linux命令是行业要求. 商业服务器基本都是linux 开源软件都先支持Linux(只支持) 大数据分析.机器学习首选Linux ...

  2. 快速玩转linux(3)

    Linux常用命令 软件操作命令 执行操作 命令 软件包管理器 yum 安装软件 yum install xxx 卸载软件 yum remove xxx 搜索软件 yum search xxx 清除缓 ...

  3. 快速玩转linux(2)

    ssh是什么   SSH:secure shell 安全外壳协议 建立在应用层基础上的安全协议 可靠, 专为远程登录会话和其他网络服务提供安全性的协议. mark 客户端服务端都基本支持全平台 服务器 ...

  4. .Neter玩转Linux系列之一:初识Linux

    一.为什么要学习Linux (1)首先我们欣赏一下,曾经的微软是如何看待Linux的,是不是很惊讶,微软还是很可爱的(#^.^#) 如今的微软看待Linux的态度:有人说微软技术那么厉害,难道微软就不 ...

  5. 【Flask】Flask快速玩框架

    最近比较忙 快速玩Flask框架,为微博做些准备 part 1 python程序 from flask importFlask, render_template, session, redirect, ...

  6. 玩转Linux之- CentOS 7.0,启用iptables防火墙

    原文 玩转Linux之- CentOS 7.0,启用iptables防火墙 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall:sy ...

  7. 快速玩转Apple Pay开发

    快速玩转Apple Pay开发 更新时间:2016年02月20日09时25分 来源:传智播客 Apple Pay 2016年2月18日上午,苹果公司宣布,与中国银联达成合作,正式在中国大陆上线Appl ...

  8. [Linux] PHP程序员玩转Linux系列-lnmp环境的搭建

    1.PHP程序员玩转Linux系列-怎么安装使用CentOS 在平常的工作中,我作为PHP程序员经常要搭建一下环境,这个环境就是Linux系统下安装nginx,php,mysql这三个软件,对软件进行 ...

  9. [Linux] PHP程序员玩转Linux系列-搭建代码开发环境

    1.PHP程序员玩转Linux系列-怎么安装使用CentOS 2.PHP程序员玩转Linux系列-lnmp环境的搭建 有些同学可能觉得我写的都是啥yum安装的,随便配置一下而已,没啥技术含量,我的目的 ...

随机推荐

  1. org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/json;charset=UTF-8' not supported或其他Content type不支持处理

    很久没从头到尾搭框架,今天搭的过程中,springmvc controller方法入参用@RequestBody自动绑定参数时一直提示各种 not supported 排查问题有两个解决路径: 1)使 ...

  2. Topcoder SRM 698 Div1 250 RepeatString(dp)

    题意 [题目链接]这怎么发链接啊..... Sol 枚举一个断点,然后类似于LIS一样dp一波 这个边界条件有点迷啊..fst了两遍... #include<bits/stdc++.h> ...

  3. 【起航计划ObjC 003】印第安老斑鸠ObjC的幻想 ---- ObjC经典问题

    1.Objective-C的类可以多重继承么?可以采用多个协议么? 答:不可以多重继承,可以采用多个协议. 2.#import和#include的区别是什么?#import<> 跟 #im ...

  4. LDA概率图模型之贝叶斯理解

    贝叶斯.概率分布与机器学习 转自:http://www.cnblogs.com/LeftNotEasy/archive/2010/09/27/1837163.html  本文由LeftNotEasy原 ...

  5. php执行与curl区别

            如执行一个文件写入 Linux服务器,分别php **/a.php与 curl http://**/a.php 结果:php执行写入到/root/test.txt, curl与浏览器运 ...

  6. Linux下利用script命令录制并回放终端会话

    Linux下利用script命令录制并回放终端会话 核心命令 script 和 scriptreplay 录制屏幕 script -t 2>timescript typescript 命令解释: ...

  7. asyncio标准库2 Hello Clock

    如何调度协程,并发运行 asyncio.gather方法可以聚合协程or future def gather(*coros_or_futures, loop=None, return_exceptio ...

  8. 【Python自然语言处理】第一章学习笔记——搜索文本、计数统计和字符串链表

    这本书主要是基于Python和一个自然语言工具包(Natural Language Toolkit, NLTK)的开源库进行讲解 NLTK 介绍:NLTK是一个构建Python程序以处理人类语言数据的 ...

  9. Java Web:主动和被动方式检测安全的框架

    对于某些敏感的系统例如支付.交易需要为其加固,有必要将可能的攻击情况考虑进来加以防范,于是有了这么一个简易的安全框架.在前辈的代码上( 详见 :http://blog.csdn.net/zhongwe ...

  10. 启动eclipse出现“Error opening registry key 'software\Javasoft\Java Runtime Environment'”

    启动eclipse出现“Error opening registry key 'software\Javasoft\Java Runtime Environment'”,“java was start ...