linux nginx搭建

合集下载

linux服务器通过rpm包安装nginx案例

linux服务器通过rpm包安装nginx案例

linux服务器通过rpm包安装nginx案例普通⽤户执⾏安装命令:sudo rpm -ivh nginx-1.19.5-1.el7.ngx.x86_64.rpm安装过程很简单,如下:显⽰信息 nginx-1:1.19.5-1.el7.ngx⼀般提⽰ Thanks for using nginx! 为安装成功。

默认安装⽬录:/etc/nginx/进⼊nginx安装⽬录执⾏:cd /etc/nginx/检查nginx配置⽂件:sudo nginx -t,注意每次修改了配置⽂件最好都需要检查⼀下。

启动nginx服务:sudo nginx -s reload或者执⾏配置⽂件: sudo nginx -c /usr/local/nginx/conf/nginx.conf报错:[myuser@localhost nginx]$ sudo nginx -s reloadnginx: [error] invalid PID number "" in "/var/run/nginx.pid"修改nginx.pid位置:sudo mkdir /usr/local/nginx/sudo vi nginx.conf报错:[myuser@localhost nginx]$ sudo nginx -s reloadnginx: [error] open() "/usr/local/nginx/nginx.pid" failed (2: No such file or directory)【解决办法】:1,确认nginx.pid所在的⽬录是否存在,权限正确;2,然后删除旧的nginx进程,指定配置⽂件,重启启动即可。

sudo nginx -c nginx.confsudo nginx -s reload启动成功:如上启动成功,启动了两个进程,⼀个是master进程,⼀个是work进程。

linux下Nginx+tomcat整合的安装与配置

linux下Nginx+tomcat整合的安装与配置

目的:搭建Nginx与tomcat整合,用Nginx代替apache步骤:一、安装Nginx1、上传nginx-0.7.63.tar.gz至/usr/local2、执行如下命令解压nginx:1.#cd /usr/local2.#tar zxvf nginx-0.7.63.tar.gz3、编译安装nginx1.#cd nginx-0.7.632.#./configure --with-http_stub_status_module --with-http_ssl_module #启动server状态页和https模块执行完后会提示一个错误,说缺少PCRE library 这个是HTTP Rewrite 模块,也即是url静态化的包可上传pcre-7.9.tar.gz,输入如下命令安装:1.#tar zxvf pcre-7.9.tar.gz2.#cd pcre-7.93.#./configure4.#make5.#make install安装pcre成功后,继续安装nginx如果是ubuntu 或Debian系统请先安装# apt-get install libpcre3 libpcre3-dev原文:I need to compile few application and I need Perl 5 Compatible Regular Expression Library (PCRE). Under CentOS I can use a package called pcre-devel, but Debian do not have the same. How do I install pcre-devel under Debian / Ubuntu Linux?Perl-compatible regular expression library. PCRE has its own native API, but a set of "wrapper"functions that are based on the POSIX API are also supplied in the library libpcreposix. Note that this just provides a POSIX calling interface to PCRE: the regular expressions themselves still follow Perl syntax and semantics. The header file for the POSIX-style functions is called pcreposix.h. To install PCRE, type thy following command:# apt-get update# apt-get install libpcre3 libpcre3-dev1.#cd nginx-0.7.632.#./configure3.#make4.#make install4、nginx安装成功后的安装目录为/usr/local/nginx在conf文件夹中新建proxy.conf,用于配置一些代理参数,内容如下:01.#!nginx (-)02.# proxy.conf03.proxy_redirect off;04.proxy_set_header Host $host;05.proxy_set_header X-Real-IP $remote_addr; #获取真实ip06.#proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #获取代理者的真实ip07.client_max_body_size 10m;08.client_body_buffer_size 128k;09.proxy_connect_timeout 90;10.proxy_send_timeout 90;11.proxy_read_timeout 90;12.proxy_buffer_size 4k;13.proxy_buffers 4 32k;14.proxy_busy_buffers_size 64k;15.proxy_temp_file_write_size 64k;编辑安装目录下conf文件夹中的nginx.conf,输入如下内容001.#运行nginx所在的用户名和用户组002.#user www www;003.004.#启动进程数005.worker_processes 8;006.#全局错误日志及PID文件007.error_log /usr/local/nginx/logs/nginx_error.log crit;008.009.pid /usr/local/nginx/nginx.pid;010.011.#Specifies the value for maximum file descriptors that can be opened by this process. 012.013.worker_rlimit_nofile 65535;014.#工作模式及连接数上限015.events016.{017. use epoll;018. worker_connections 65535;019.}020.#设定http服务器,利用它的反向代理功能提供负载均衡支持021.http022.{023. #设定mime类型024. include mime.types;025. default_type application/octet-stream;026. include /usr/local/nginx/conf/proxy.conf;027. #charset gb2312;028. #设定请求缓冲029. server_names_hash_bucket_size 128;030. client_header_buffer_size 32k;031. large_client_header_buffers 4 32k;032. client_max_body_size 8m;033.034. sendfile on;035. tcp_nopush on;036.037. keepalive_timeout 60;038.039. tcp_nodelay on;040.041.# fastcgi_connect_timeout 300;042.# fastcgi_send_timeout 300;043.# fastcgi_read_timeout 300;044.# fastcgi_buffer_size 64k;045.# fastcgi_buffers 4 64k;046.# fastcgi_busy_buffers_size 128k;047.# fastcgi_temp_file_write_size 128k;048.049.# gzip on;050.# gzip_min_length 1k;051.# gzip_buffers 4 16k;052.# gzip_http_version 1.0;053.# gzip_comp_level 2;054.# gzip_types text/plain application/x-javascript text/css application/xml;055.# gzip_vary on;056.057. #limit_zone crawler $binary_remote_addr 10m;058. ###禁止通过ip访问站点059. server{060. server_name _;061. return 404;062. }063.064.065. server066. {067. listen 80;068. server_name localhost;069. index index.html index.htm index.jsp;#设定访问的默认首页地址070. root /home/www/web/ROOT;#设定网站的资源存放路径071.072. #limit_conn crawler 20;073.074. location ~ .*.jsp$ #所有jsp的页面均交由tomcat处理075. {076. index index.jsp;077. proxy_pass http://localhost:8080;#转向tomcat处理078. }079.080.081. location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ #设定访问静态文件直接读取不经过tomcat 082. {083. expires 30d;084. }085.086. location ~ .*\.(js|css)?$087. {088. expires 1h;089. }090.091.#定义访问日志的写入格式092. log_format access '$remote_addr - $remote_user [$time_local] "$request" '093. '$status $body_bytes_sent "$http_referer" '094. '"$http_user_agent" $http_x_forwarded_for';095. access_log /usr/local/nginx/logs/localhost.log access;#设定访问日志的存放路径096.097. }098.099.100.101.102.}5、修改/usr/local/nginx/conf/nginx.conf配置文件后,请执行以下命令检查配置文件是否正确:1.#/usr/local/nginx/sbin/nginx -t如果屏幕显示以下两行信息,说明配置文件正确:1.the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok2.the configuration file /usr/local/nginx/conf/nginx.conf was tested successfully如果提示unknown host,则可在服务器上执行:ping 如果也是同样提示unknown host则有两种可能:a、服务器没有设置DNS服务器地址,查看/etc/resolv.conf下是否设置,若无则加上b、防火墙拦截6、启动nginx的命令1.#/usr/local/nginx/sbin/nginx这时,输入以下命令查看Nginx主进程号:1.ps -ef | grep "nginx: master process" | grep -v "grep" | awk -F ' ' '{print $2}'7、停止nginx的命令1.#/usr/local/nginx/sbin/nginx -s stop8、在不停止Nginx服务的情况下平滑变更Nginx配置a、修改/usr/local/nginx/conf/nginx.conf配置文件后,请执行以下命令检查配置文件是否正确:1./usr/local/nginx/sbin/nginx -t如果屏幕显示以下两行信息,说明配置文件正确:1.the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok2.the configuration file /usr/local/nginx/conf/nginx.conf was tested successfullyb、这时,输入以下命令查看Nginx主进程号:1.ps -ef | grep "nginx: master process" | grep -v "grep" | awk -F ' ' '{print $2}'屏幕显示的即为Nginx主进程号,例如:6302这时,执行以下命令即可使修改过的Nginx配置文件生效:1.kill -HUP 6302或者无需这么麻烦,找到Nginx的Pid文件:1.kill -HUP `cat /usr/local/nginx/nginx.pid`9、nginx启动好后启动tomcat,此时输入http://主机ip地址即可看到“My web!”三、其他stub_status语法: stub_status on默认值: None作用域: location创建一个location 区域启用stub_status"stub status" 模块返回的状态信息跟mathopd's 的状态信息很相似. 返回的状态信息如下:1.Active connections: 2912.server accepts handled requests3.16630948 16630948 310704654.Reading: 6 Writing: 179 Waiting: 106active connections -- 对后端发起的活动连接数server accepts handled requests -- nginx 总共处理了16630948 个连接, 成功创建16630948 次握手(证明中间没有失败的), 总共处理了31070465 个请求(平均每次握手处理了 1.8个数据请求)reading -- nginx 读取到客户端的Header信息数writing -- nginx 返回给客户端的Header信息数waiting -- 开启keep-alive 的情况下,这个值等于active - (reading + writing),意思就是Nginx 说已经处理完正在等候下一次请求指令的驻留连接。

nginx安装、启动、重启、关闭(linux系统命令行)

nginx安装、启动、重启、关闭(linux系统命令行)

nginx安装、启动、重启、关闭(linux系统命令⾏)前⾔: 最近在部署我的hexo静态博客到腾讯云服务器上,⽤到了很多nginx的知识,在此做下总结:刚接触的linux服务器上,nginx配置乱的有点令⼈发指,就把⽼的卸载了重新装⼀下。

1、卸载yum remove nginx2、安装yum install -y nginx3、判断配置⽂件是否正确nginx -t -c /usr/local/nginx/conf/nginx.conf或者cd /usr/local/nginx/sbin./nginx -t---> successful 说明配置⽂件正确4、启动cd usr/local/nginx/sbin./nginx----> nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use) 已启动5、重启更改配置重启nginxps -ef | grep nginx #查询nginx主进程号----> root 2255kill -HUP 2255 #主进程号或进程号⽂件路径重启成功(亲测有效)或者使⽤cd /usr/local/nginx/sbin./nginx -s reload三、关闭 查询nginx主进程号 ps -ef | grep nginx 从容停⽌ kill -QUIT 主进程号 快速停⽌ kill -TERM 主进程号 强制停⽌ kill -9 nginx 若nginx.conf配置了pid⽂件路径,如果没有,则在logs⽬录下 kill -信号类型 '/usr/local/nginx/logs/nginx.pid'四、升级 1、先⽤新程序替换旧程序⽂件 2、kill -USR2 旧版程序的主进程号或者进程⽂件名 此时旧的nginx主进程会把⾃⼰的进程⽂件改名为.oldbin,然后执⾏新版nginx,此时新旧版本同时运⾏ 3、kill -WINCH 旧版本主进程号 4、不重载配置启动新/旧⼯作进程 kill -HUP 旧/新版本主进程号 从容关闭旧/新进程 kill -QUIT 旧/新进程号 快速关闭旧/新进程 kill -TERM 旧/新进程号。

linux nginx常用命令

linux nginx常用命令

linux nginx常用命令Linux Nginx是一种高性能的Web服务器和反向代理服务器,广泛应用于互联网领域。

本文将介绍Linux Nginx的常用命令,帮助读者更好地了解和使用该工具。

1. 安装Nginx要安装Nginx,可以使用以下命令:```sudo apt-get updatesudo apt-get install nginx```2. 启动和停止Nginx启动Nginx服务的命令是:```sudo systemctl start nginx```停止Nginx服务的命令是:```sudo systemctl stop nginx```3. 重启Nginx如果需要重新启动Nginx服务,可以使用以下命令:```sudo systemctl restart nginx```4. 查看Nginx的状态要查看Nginx服务的状态,可以使用以下命令:```sudo systemctl status nginx```5. 配置文件的位置Nginx的配置文件位于/etc/nginx目录下,主要有两个重要的配置文件:- nginx.conf:Nginx的主配置文件,包含全局配置信息。

- sites-available/default:默认的虚拟主机配置文件,用于配置网站的相关信息。

6. 检查配置文件的正确性为了确保配置文件的正确性,可以使用以下命令:```sudo nginx -t```如果配置文件没有错误,会显示"nginx: configuration file /etc/nginx/nginx.conf test is successful"。

7. 重新加载配置文件当修改了Nginx的配置文件后,需要重新加载配置文件,可以使用以下命令:```sudo systemctl reload nginx```8. 查看Nginx的版本信息要查看Nginx的版本信息,可以使用以下命令:```nginx -v```9. 监听端口默认情况下,Nginx监听的端口是80。

Linux安装Nginx步骤详解

Linux安装Nginx步骤详解

Linux安装Nginx步骤详解1. Nginx安装步骤1.1 官⽹介绍1.2 上传安装包上传到指定⽬录中 /usr/local/src1.3 解压Nginx 压缩⽂件1.移动安装⽬录到指定⽂件mv nginx-1.19.4.tar.gz software/2.修改⽂件名称mv nginx-1.19.4 nginx1.4 关于nginx ⽬录说明1.5 安装nginx服务器说明:在源⽂件中执⾏如下命令./configure直接结果:makemake install1.6 nginx命令说明说明: nginx⼯作⽬录说明路径:命令:1.windows命令:1.启动命令: start nginx2.重启命令: nginx -s reload3.关闭命令: nginx -s stop2.Linux命令:1.启动命令: ./nginx2.重启命令: ./nginx -s reload3.关闭命令: ./nginx -s stop1.7 修改nginx配置⽂件需求说明:1.实现图⽚反向代理2.实现tomcat负载均衡实现具体实现:修改完成之后,重启nginx服务器.#配置图⽚代理服务器 :80server {listen 80;server_name ;location / {#root D:/JT-SOFT/images;root /usr/local/src/images;}}#配置商品后台服务器server{listen 80;server_name ;location / {#代理真实服务器地址#proxy_pass http://localhost:8091;#映射到集群#proxy_pass http://jtWindows;proxy_pass http://jtLinux;}}#配置tomcat服务器集群 1.默认轮询策略 2.权重策略 3.ip_hash策略 upstream jtWindows {#ip_hash; down 标识宕机 backup 备⽤机#max_fails=1 表⽰最⼤的失败次数#fail_timeout=60s 如果访问不通,则在60秒内,不会再次访问故障机 server 127.0.0.1:8081 max_fails=1 fail_timeout=60s;server 127.0.0.1:8082 max_fails=1 fail_timeout=60s;server 127.0.0.1:8083 max_fails=1 fail_timeout=60s;}upstream jtLinux {server 192.168.126.129:8081;server 192.168.126.129:8082;server 192.168.126.129:8083;}1.8.修改hosts⽂件说明:由于没有购买image/的域名,所以需要通过hosts⽂件修改转向.修改windows中的hosts⽂件:# 京淘配置192.168.126.129 192.168.126.129 #IP 域名映射关系#127.0.0.1 #127.0.0.1 127.0.0.1 127.0.0.1 127.0.0.1 localhost#bug 丢最后⼀个字母问题1.9效果展现到此这篇关于Linux安装Nginx步骤详解的⽂章就介绍到这了,更多相关Linux安装Nginx步骤内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。

linux下nginx【反向代理】配置【负载均衡】配置

linux下nginx【反向代理】配置【负载均衡】配置

linux下nginx【反向代理】配置【负载均衡】配置nginx 安装过程略过,新⼿可参考本次主要记录下nginx配置⽂件的设置过程nginx 的配置⽂件nginx.conf 可以配置多个端⼝:复制⼀个 server{ //code } 代码块修改端⼝即可如下配置⽂件中 nginx 启动后,可访问以下两个端⼝。

修改后配置⽂件后,访问 http://ip:10088 和 http://ip:10087 均可请求到nginx服务。

1、10088端⼝配置反向代理,消除跨域问题。

在 server { //code} 中添加如下代码则可以添加⼀个Tomcat 服务的反向代理。

原始访问tomcat 的路径为 http://ip:8582/ncms 在 nginx 配置⽂件中加⼊以下代码后,则可以通过 http://ip:10088/ncms 访问到 tomcat的服务。

这对于在⼀台服务器上发布多个tomcat时统⼀的地址端⼝+不同项⽬,可以完美绕开跨域问题。

location /ncms {proxy_pass http://127.0.0.1:8582;proxy_set_header Host $host:10088;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Via "nginx";client_max_body_size 50m;}2、10087端⼝配置ip_hash模式的负载均衡,ip_hash可以绕开解决session共享的问题。

⽬前许多应⽤均为多节点部署。

例如:同⼀个java Web应⽤部署了4个 Tomcat 服务,把tomcat原始访问地址+端⼝配置成如下模式, weight为权重。

以下配置模式表⽰ server 10.174.25.213:8582 weight=6 有60%的概率处理客户端请求。

Linux系统服务器Nginx配置404页面的方法

Linux系统服务器Nginx配置404页面的方法

Linux系统服务器Nginx配置404页面的方法Linux系统环境下Nginx配置404页面很多设置后返回状态码是200,而不是404状态码,所以那样的404页面设置是不正确的,今天分享下Linux下Nginx配置404页面设置方法:按照以下5步骤:1、创建自己的404.html页面,并放于网站根目录;2、更改nginx.conf在http定义区域加入:vi /usr/local/nginx/conf/nginx.conf 编辑Nginx配置文件,在http 区段添加下面代码:fastcgi_intercept_errors on;3、更改nginx.conf 在网站配置中在server 区域加入:1.2.server{3.error_page 404 = 404.html; #只是转跳而已4.}网上教程基本都是使用上面代码,返回的是200状态码,正确的设置是去掉=,如下代码所示:1.2.server{3.error_page 404 404.html;4.}4、测试nginx.conf正确性:1./usr/local/nginx/sbin/nginx –t返回下面代码通过:the configuration file /usr/local/nginx/conf/nginx.conf syntax is okconfiguration file /usr/local/nginx/conf/nginx.conf test is successful5、平滑重启Nginx,即可解决完成404页面设置。

1./usr/local/ws/nginx/sbin/nginx -s reload这样在用站长工具测试状态码,检测的状态码就是404了,也就完成了Linux下Nginx配置404页面设置。

相关说明:当用户进入,点击了一个不存在或者已经删除的页面,网站会出现该页面不存在的提示,很多网站返回的是200状态码,而不是能引导用户返回。

lnmp简单案例

lnmp简单案例

lnmp简单案例下面就给你整一个超简单的LNMP案例,就像讲故事一样,保证你轻松理解。

一、啥是LNMP呢?先简单说一下,LNMP就是由Linux操作系统、Nginx服务器、MySQL数据库和PHP 编程语言组成的一个超棒的网络应用环境。

这几个家伙凑一块儿,就能让好多超酷的网站跑起来啦。

二、案例场景搭建一个超简单的博客网站。

1. 准备工作安装Linux操作系统。

咱就假设你已经有一台服务器或者虚拟机装了Linux系统,像CentOS或者Ubuntu都挺不错的。

要是没有,那就像搭积木一样先装一个呗。

2. 安装Nginx。

在Linux系统里打开命令行(就像打开一个魔法盒子,你输入指令就能让电脑干各种事儿)。

对于CentOS系统,你可以输入像这样的命令(当然要先确保你有足够的权限哦,一般用sudo或者切换到root用户):`yum install nginx -y`。

这个命令就像是告诉电脑:“电脑兄,给我把Nginx 装上,别啰嗦。

”对于Ubuntu系统呢,就是 `apt get install nginx -y`。

安装好之后,你可以通过浏览器访问你的服务器IP地址,如果看到了Nginx的欢迎页面,那就说明Nginx 安装成功啦,就像你敲开了一扇通往博客世界的大门。

3. 安装MySQL数据库。

在CentOS系统里,你可以这样干:先添加MySQL的yum源,就像告诉电脑到哪里去找MySQL这个宝藏。

然后再执行`yum install mysql server -y` 命令来安装MySQL服务器。

安装好之后,启动MySQL服务,用命令 `systemctl start mysqld`。

在Ubuntu系统下,是 `apt get install mysql server -y`。

安装完之后,你可以用 `mysql u root p`(这里是登录MySQL,输入密码后就进入MySQL的命令行界面啦)来测试一下是不是安装成功了。

Linux下Nginx安装的方法(pcre和openssl)

Linux下Nginx安装的方法(pcre和openssl)

Linux下Nginx安装的⽅法(pcre和openssl)Nginx ("engine x") 是⼀个⾼性能的 HTTP 和反向代理服务器,也是⼀个 IMAP/POP3/SMTP 代理服务器。

想要Linux下安装Nginx作为WEB服务器,要先准备些必要的库和⼯具,通常必须安装的是:PERC库和Openssl。

分四步⾛,让你的Nginx迅速跑起来!1. 安装PCRE库(Nginx的rewrite模块和HTTP核⼼模块会⽤到PCRE正则表达式语法)不⽤考虑是否已安装,直接上命令:使⽤yum来安装:[root@ ~]# yum install pcre pcre-devel或者⽤apt-get:[root@ ~]# apt-get install libpcre3 libpcre3-dev如果这些安装包已经安装在系统上,你会收到Nothing to do 的信息,就是已安装过了的意思。

使⽤yum:[root@localhost example]# yum install openssl openssl-devel或者⽤apt-get:[root@localhost example]# apt-get install openssl openssl-dev3.下载、解压Nginx[root@localhost example]# tar zxf nginx-0.7.66.tar.gz4.安装Nginx创建⼀个应⽤程序通常分为三步:从源代码到配置、编译和安装编译。

每⼀步都有很多配置项,但对于初学者,我们只是让它能跑起来,可以先忽略这些配置项。

最容易的办法依次执⾏下⾯三个命令:[root@localhost nginx-0.7.66]# ./configure //有⼀个重要的配置项是 --prefix=... 指定安装Nginx的基础⽬录,⽐如你想把它安装在 /home/jiang/www/下,这个完整的命令应该是:[root@localhost nginx-0.7.66]# ./configure --prefix=/home/jiang/www configure过程中可能出现的⼏个报错,及原因:1) ./configure: error: C compiler gcc is not found 原因:你没有安装gcc ,这样可能你也没安装下⾯⼏个包,请⼀并安装yum install gcc gcc-c++ autoconf make2) Makefile: 权限不够原因:当前⽤户没有权限读写nginx源码⽬录,请切换到root下运⾏如下命令,作⽤是将当前⽬录的所有⽂件所有者都设为我们正在使⽤的普通⽤户。

在Linux虚拟机中搭建Nginx服务器以及SSL、反向代理和负载均衡的实现

在Linux虚拟机中搭建Nginx服务器以及SSL、反向代理和负载均衡的实现

在Linux虚拟机中搭建Nginx服务器以及SSL、反向代理和负载均衡的实现目录一、虚拟机下网络的网络配置 (2)1、Bridged模式 (2)2、NAT 模式 (3)3、host-only 模式: (4)4、作业环境网络拓扑图 (4)二、Nginx的安装与配置 (5)1、Nginx简介 (5)2、安装前的环境准备 (5)3、下载安装 (6)4、控制Nginx服务 (6)5、配置nginx (7)6、负载测试 (9)三、基于OpenSSL部署https网站 (9)1、OpenSSL以及SSL/TLS协议简介: (9)2、Linux下配置https (10)3、SSL/TSL协议分析 (12)四、用Nginx实现负载均衡和反向代理 (15)1、反向代理的实现 (15)2、负载均衡 (18)一、虚拟机下网络的网络配置1、Bridged模式在桥接模式下,VMware虚拟机里的系统就像是局域网中的一台独立的主机,它可以访问同一个网段内任何一台机器,即可以相互ping通。

在桥接模式下,你需要手工为虚拟系统配置IP地址、子网掩码,而且还要和宿主机器处于同一网段,这样虚拟系统才能和宿主机器进行通信。

同时,由于这个虚拟系统是局域网中的一个独立的主机系统,就可以手工配置它的IP,DNS服务器,网关等信息,以实现通过局域网的网关或通过交换机访问外网。

图1本地物理网卡和虚拟网卡通过虚拟交换机进行桥接,物理网卡和虚拟网卡在拓扑图上处于同等地位。

Vmware默认给虚拟系统提供了一个虚拟网卡(linux下默认为eth0设备),虚拟系统通过该网卡与外部通信。

图中虚拟交换机由vmware提供,其默认设备名为VMnet0。

如图1所示。

2、NAT 模式NAT 即Network Address Translation 缩写,即网络地址转换,由NAT服务完成,在vmware里默认为VMnet8虚拟交换机,它将虚拟系统的IP地址转换成宿主机的IP地址,从而借用宿主机访问其他主机。

linuxlnmp搭建实训总结

linuxlnmp搭建实训总结

linuxlnmp搭建实训总结在Linux环境下搭建LNMP(Linux+Nginx+MySQL+PHP)是一项常见的实训任务,该任务旨在让学生通过实际操作了解和掌握LNMP架构的搭建和配置。

我参与了这个实训,并总结了以下的经验和收获。

首先,Linux是一个非常稳定和安全的操作系统,因此我们首先需要安装和配置Linux。

在实训中,我们使用了Ubuntu作为我们的Linux发行版。

我们学习了如何在虚拟机中安装Ubuntu,并进行基本的配置,例如网络设定、用户管理等。

这些基本操作对于后续的LNMP 的搭建非常重要,因为我们需要建立合适的开发和测试环境。

接下来,我们安装和配置了Nginx。

Nginx是一个高性能的Web服务器,经常被用于承载高并发的Web应用。

我们学习了如何从官方网站下载和安装Nginx,以及如何对其进行基本的配置。

我们了解了Nginx的配置文件结构,学习了如何创建和编辑这些配置文件,以及如何重载配置文件以使更改生效。

在配置Nginx时,我们还学习了如何设置虚拟主机,以便我们能够在同一台服务器上承载多个网站。

我们了解了虚拟主机配置文件的结构和语法,并学习了如何将请求从域名映射到正确的网站目录。

接下来,我们安装和配置了MySQL。

MySQL是一个流行的关系型数据库管理系统,经常被用于存储和管理数据。

我们学习了如何从官方网站下载和安装MySQL,以及如何对其进行基本的配置。

我们了解了MySQL的配置文件结构和默认值,并学习了如何创建和管理数据库和用户。

在配置MySQL时,我们还学习了如何设置远程访问权限,以便通过其他主机连接和管理MySQL服务器。

我们了解了如何修改MySQL的配置文件以允许远程连接,并学习了如何创建和管理远程MySQL用户。

最后,我们安装和配置了PHP。

PHP是一种常用的脚本语言,经常被用于开发Web应用。

我们学习了如何从官方网站下载和安装PHP,并进行了基本的配置。

我们了解了PHP的配置文件结构和选项,并学习了如何设置PHP的运行参数和扩展。

Linux下Nginx+PHP+MySQL配置(图).docx

Linux下Nginx+PHP+MySQL配置(图).docx

Linux下Nginx+PHP+Mysql安装,Nginx配置文件支持PHP2011-03-17 10:04利用Linux Nginx架设高性能的Web环境 Linux Nginx ("engine x") 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。

Linux Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。

Igor 将源代码以类BSD许可证的形式发布。

Linux Nginx 超越 Apache 的高性能和稳定性,使得国内使用Linux Nginx作为 Web 服务器的网站也越来越多,其中包括新浪博客、新浪播客、网易新闻等门户网站频道,六间房、等视频分享网站,Discuz!官方论坛、水木社区等知名论坛,豆瓣、YUPOO相册、海内SNS、迅雷在线等新兴Web 2.0网站。

实验环境Centos4.5pcre-7.8.tar.gz 正则表达式下载地址:ftp:///pub/software/programming/pcre/nginx-0.7.26.tar下载地址:/php-5.2.6.tar.bz2下载地址:/releases/php-5.2.6-fpm-0.5.9.diff.gz 下载地址:/ php-fpm是为PHP 打的一个FastCGI管理补丁,可以平滑变更php.ini配置而无需重启php-cgi 注:PHP的版本要和fpm的版本一致mysql-5.0.67.tar.gzDiscuz!_6.0.0_SC_UTF8.zip1、安装pcre# tar -zxvf pcre-7.8.tar.gz# cd pcre-7.8# ./configure# make && make install2、安装Linux Nginx# tar -zxvf nginx-0.7.26.tar.gz# cd nginx-0.7.26# ./configure --prefix=/usr/local/nginx# make && make install启动nginx:# /usr/local/nginx/sbin/nginx停止nginx# kill -QUIT `cat /usr/local/nginx/logs/nginx.pid`重启nginxkill -HUP `cat /usr/local/nginx/logs/nginx.pid`添加到自启动# echo "/usr/local/nginx/sbin/nginx">>/etc/rc.local 3、安装mysql# tar -zxvf mysql-5.0.67.tar.gz# cd mysql-5.0.67# groupadd mysql# useradd -g mysql -s /sbin/nologin -M mysql# ./configure --prefix=/usr/local/mysql --with-charset=gbk--with-extra-charset=all --enable-hread-safe-client--enable-local-infile --with-low-memory# make && make install# cp support-files/f /etc/f# chown -R mysql.mysql /usr/local/mysql/# /usr/local/mysql/bin/mysql_install_db --user=mysql# chown -R root.root /usr/local/mysql/# chown -R mysql.mysql /usr/local/mysql/var/启动数据库服务,并添加到自启动# /usr/local/mysql/bin/mysqld_safe --user=mysql &#cp support-files/mysql.server /etc/rc.d/init.d/mysqld#chmod 755 /etc/rc.d/init.d/mysqld加入自动启动服务队列:#chkconfig --add mysqld#chkconfig --level 345 mysqld on添加root密码# /usr/local/mysql/bin/mysqladmin -u root password "123456"测试一下:# /usr/local/mysql/bin/mysql -u root -p输入密码:123456,看能不能进入到数据库配置库文件搜索路径# echo "/usr/local/mysql/lib/mysql">>/etc/ld.so.conf# ldconfig# ldconfig -v添加/usr/local/mysql/bin到环境变量PATH中#echo "export PATH=$PATH:/usr/local/mysql/bin">>/etc/profile#source /etc/profile4、安装PHP这里产生的是可执行文件,和apache的不一样,和apache结合的时候产生的是动态库# tar -jxvf php-5.2.6.tar.bz2# gzip -cd php-5.2.6-fpm-0.5.9.diff.gz |patch -d php-5.2.6 -p1# cd php-5.2.6# ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql--enable-fastcgi --enable-fpm--with-config-file-path=/usr/local/php/etc --enable-force-cgi-redirect# make && make install# cp php.ini-recommended /usr/local/php/etc/php.ini# vi /usr/local/php/php-fpm.conf(1)<value name="listen_address">127.0.0.1:9000</value>修改为<valuename="listen_address">IP:9000</value>//本机就用默认的127.0.0.1(2)下面这两行去掉注释并修改<value name="sendmail_path">/usr/sbin/sendmail -t -i</value><value name="display_errors">1</value>(3)<value name="user">nobody</value> //去注释(4)<value name="group">nobody</value> //去注释(5)<value name="allowed_clients">127.0.0.1</value> //允许连接的PC,本机就用127.0.0.1启动php-fpm# /usr/local/php/sbin/php-fpm start添加到自启动# echo"/usr/local/php/sbin/php-fpm start">>/etc/rc.local5、修改Linux Nginx的配置文件,支持PHP# vi /usr/local/nginx/conf/nginx.confuser nobody;worker_processes 8;pid /usr/local/nginx/logs/nginx.pid;worker_rlimit_nofile 1024;events{use epoll;worker_connections 1024;}http{include mime.types;default_type application/octet-stream;server_names_hash_bucket_size 128;client_header_buffer_size 32k;large_client_header_buffers 4 32k;client_max_body_size 8m;sendfile on;tcp_nopush on;keepalive_timeout 60;tcp_nodelay on;fastcgi_connect_timeout 300;fastcgi_send_timeout 300;fastcgi_read_timeout 300;fastcgi_buffer_size 64k;fastcgi_buffers 4 64k;fastcgi_busy_buffers_size 128k;fastcgi_temp_file_write_size 128k;gzip on;gzip_min_length 1k;gzip_buffers 4 16k;gzip_http_version 1.0;gzip_comp_level 2;gzip_types text/plain application/x-javascript text/css application/xml; gzip_vary on;server {listen 80;server_name ;root /var/www/blog;index index.html index.htm index.php;location ~ .*\.(php|php5)?$ {root html;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /var/www/blog$fastcgi_script_name;include fastcgi_params;}location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${expires 30d;}location ~ .*\.(js|css)?${expires 1h;}log_format access '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" $http_x_forwarded_for';access_log /var/logs/access.log access;}}注:server部分为PHP虚拟主机127.0.0.1:9000为fastcgi的PC,我这里用的本机/var/www/blog$fastcgi_script_name; 为PHP网页保存的目录测试配置文件:# /usr/local/nginx/sbin/nginx -t6、优化Linux内核参数# vi /etc/sysctl.conf在末尾增加以下内容:net.ipv4.tcp_fin_timeout = 30net.ipv4.tcp_keepalive_time = 300net.ipv4.tcp_syncookies = 1net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_tw_recycle = 1net.ipv4.ip_local_port_range = 5000 65000使配置立即生效:# /sbin/sysctl -p转自/1364623/293654Nginx+php(FastCGI)+Memcached+Mysql+APC Nginx高性能web服务器安装APC模块安装linux apc 配置fastCGI安装配置3前言*Nginx+php(FastCGI)+Memcached+Mysql+APC 是目前主流的高性能服务器搭建方式!适合大中型网站,小型站长也可以采用这种组合!Nginx 超越Apache 的高性能和稳定性,使得国内使用Nginx 作为Web 服务器的网站也越来越多,其中包括国内最大的电子地图MapBar、新浪博客、新浪播客、网易新闻等门户网站频道,六间房、等视频分享网站,Discuz!官方论坛、水木社区等知名论坛,豆瓣、YUPOO相册、海内SNS、迅雷在线等新兴Web 2.0网站,更多的网站都在使用Nginx配置。

安装配置nginx1.8.0

安装配置nginx1.8.0

CentOS安装配置nginx1.8.0∙环境准备yum -y install gcc gcc-c++ autoconf automake makeyum -y install zlib zlib-devel openssl--devel pcre pcre-devel ∙下载 nginx 、解压、编译并安装wget /download/nginx-1.8.0.tar.gztar zxvf nginx-1.8.0.tar.gzcd nginx-1.8.0./configuremake && make install∙启动nginxcd /usr/local/nginx/sbin/./nginx∙开机启动nginx首先,在linux系统的/etc/init.d/目录下创建nginx文件,使用如下命令: vi /etc/init.d/nginx 在脚本中添加如下命令:**********************************************************************************************#!/bin/bash# nginx Startup script for the Nginx HTTP Server# it is v.0.0.2 version.# chkconfig: - 85 15# description: Nginx is a high-performance web and proxy server.# It has a lot of features, but it's not for everyone.# processname: nginx# pidfile: /var/run/nginx.pid# config: /usr/local/nginx/conf/nginx.confnginxd=/usr/local/nginx/sbin/nginxnginx_config=/usr/local/nginx/conf/nginx.confnginx_pid=/var/run/nginx.pidRETVAL=0prog="nginx"# Source function library.. /etc/rc.d/init.d/functions# Source networking configuration.. /etc/sysconfig/network# Check that networking is up.[ ${NETWORKING} = "no" ] && exit 0[ -x $nginxd ] || exit 0# Start nginx daemons functions.start() {if [ -e $nginx_pid ];thenecho "nginx already running...."exit 1fiecho -n $"Starting $prog: "daemon $nginxd -c ${nginx_config}RETVAL=$?echo[ $RETVAL = 0 ] && touch /var/lock/subsys/nginxreturn $RETVAL}# Stop nginx daemons functions.stop() {echo -n $"Stopping $prog: "killproc $nginxdRETVAL=$?echo[ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /var/run/nginx.pid}# reload nginx service functions.reload() {echo -n $"Reloading $prog: "#kill -HUP `cat ${nginx_pid}`killproc $nginxd -HUPRETVAL=$?echo}# See how we were called.case "$1" instart)start;;stop)stop;;reload)reload;;restart)stopstart;;status)status $progRETVAL=$?;;*)echo $"Usage: $prog {start|stop|restart|reload|status|help}" exit 1esacexit $RETVAL********************************************************************* ******************nginxd=/usr/local/nginx/sbin/nginxnginx_config=/usr/local/nginx/conf/nginx.confnginx_pid=/var/run/nginx.pid设置文件的访问权限:chmod a+x /etc/init.d/nginx (a+x参数表示==> all user can execute 所有用户可执行)设置开机启动vi /etc/rc.local 添加/etc/init.d/nginx start 保存并退出下次重启就会生效,实现nginx 的自启动。

Debianlinux(Kali)手动搭建web服务器(LNMP)教程

Debianlinux(Kali)手动搭建web服务器(LNMP)教程

Debianlinux(Kali)⼿动搭建web服务器(LNMP)教程⼀.下载安装Vmware Debian Linux或者Kali虚拟机.这部分内容⽹上很多博主写的⼗分详细,在此不再赘述。

我安装后的Kali界⾯如下:⼆.下载安装nginx,php-fpm和php-mysql.先⽤sudo su命令切换到root⽤户,避免某些命令权限不够。

1.下载nginx:apt install nginx我的版本:1.18.0-6.1,这⼀步下载成功会在/etc下创建nginx⽂件夹,nginx内容如下:安装完成后可⽤systemctl status nginx命令查看nginx状态。

这⼀步做完后就能利⽤nginx搭建简单的服务器了:⾸先要配置防⽕墙(打开80端⼝等),可⽤UFW防⽕墙来管理。

UFW下载:apt install ufw.配置防⽕墙命令:ufw allow 'Nginx Full'.然后开启nginx服务器:systemctl start nginx.查看本机ip地址:ip addr show.在虚拟机的浏览器中输⼊ip地址即可看到默认页⾯:(这个是我改过的页⾯)。

你可以通过修改/var/www/index.html⽂件来修改上图显⽰的页⾯。

⾄此,我们搭建了⼀个简单的web服务器,它可以显⽰特定的静态页⾯。

但这个服务器与我们⽇常浏览的⽹页服务器相⽐有以下⼏个缺点:(1).外⽹(⽐如你的⼿机,本机浏览器)不能访问此页⾯;(2).只能显⽰特定页⾯,不能根据我们的输⼊返回不同页⾯;下⾯是解决⽅案:针对(1)我们要⽤到,我⽤的是进⼊页⾯后完成注册和实名验证,然后点击购买隧道-免费隧道-免费购买,完成后页⾯下⽅会得到⼀个authtoken,⽤来在natapp客户端验证。

然后下载natapp客户端,更改natapp权限chmod 777 natapp,启动natapp./natapp -authtoken=xxxxx.弄完之后第⼀个问题就解决了。

linux服务器nginx的卸载与安装教程

linux服务器nginx的卸载与安装教程

linux服务器nginx的卸载与安装教程前⾔刚接触的linux服务器上,nginx配置乱的有点令⼈发指,就把⽼的卸载了重新装⼀下。

下⾯话不多说了,来⼀起看看详细的介绍吧卸载linux有⼀系列的软件管理器,⽐如常见的linux下的yum、Ubuntu下的apt-get等等。

通过这些软件管理器可以很快的卸载软件,并且不会有⽂件及配置残留。

这⾥我使⽤的是yum,命令如下yum remove nginx安装相⽐于卸载,安装就相对⿇烦了,不过也还好。

⼀步⼀步来~1、下载并解压安装包wget /download/nginx-1.13.7.tar.gztar -xvf nginx-1.13.7.tar.gzmv nginx-1.13.7.tar.gz nginx // 重命名成短名字很多⼈都说先装依赖,也对,不过也可以放在后⾯,看报错,需要那个装那个,这样你还能印象深刻点~~如果想要先安装依赖的话主要有以下四个gcc、gcc-c++: 主要⽤来进⾏编译相关使⽤openssl、openssl-devel: ⼀般当配置https服务的时候就需要这个了zlib、zlib-devel:主要⽤于⽂件的解压缩pcre、pcre-devel: Nginx的rewrite模块和HTTP核⼼模块会⽤到PCRE正则表达式语法其他的,少了报错再装就⾏2、配置、编译及安装./configuremakemake install3、nginx启动测试./nginx -t出现如下表⽰配置正常nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is oknginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful过程中可能会碰到依赖缺失问题,少了就转,yum install XXX,妥妥的。

阿里云Linux系统Nginx配置多个域名的方法详解

阿里云Linux系统Nginx配置多个域名的方法详解

阿⾥云Linux系统Nginx配置多个域名的⽅法详解Nginx绑定多个域名,可通过把多个域名规则写⼀个配置⽂件⾥实现,也可通过分别建⽴多个域名配置⽂件实现,为了管理⽅便,建议每个域名建⼀个⽂件,有些同类域名则可写在⼀个总的配置⽂件⾥。

1. ⽐如我想建⽴两个站点的域名分别是 和 ,将这两个域名都解析到同⼀服务器IP。

2. 在Nginx配置⽂件conf⽬录下创建⼀个专门存放虚拟主机配置的⽬录,命名为vhosts,可以把虚拟⽬录的配置全部放在这⾥。

如本例创建名为vhosts_A.conf和vhosts_B.conf⽂件并打开,在⾥⾯写下相关的配置⽂件。

配置⽂件参考:server {listen 80 default;#监听端⼝server_name ;#绑定域名index index.html index.htm index.jsp login.jsp;#默认⽂件root /alidata/www/default;#⽹站根⽬录location /{proxy_pass http://127.0.0.1:8080;proxy_redirect off;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${expires 30d;}location ~ .*\.(js|css)?${expires 1h;}access_log /alidata/log/nginx/access/default.log;}3. 在nginx的主配置⽂件⾥,设置包含这两个站点的配置⽂件。

打开nginx.conf⽂件,在http{...}段输⼊#包含所有的虚拟主机的配置⽂件(填写服务器中vhosts_conf/*.conf所在绝对路径)include /alidata/server/nginx/conf/vhosts/*.conf;4. 在指定的⽹站根⽬录下上传每个站点的⽂件5. 重启nginx:/etc/init.d/nginx restart,测试是否访问正常以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

nginx linux常用路径

nginx linux常用路径

nginx linux常用路径nginx是一款开源的高性能HTTP和反向代理服务器,常用于构建高并发的Web服务器。

在Linux系统中,nginx的安装目录、配置文件目录、日志文件目录等都有一定的规范路径。

本文将按照这些路径为标题,详细介绍nginx在Linux中的常用路径。

一、安装目录nginx的安装目录是指nginx的二进制文件所在的目录,一般将其安装在/usr/local/nginx目录下。

在该目录下,有一些重要的子目录和文件,如conf目录、sbin目录、logs目录等。

1.1 conf目录conf目录是nginx的配置文件存放目录,主要包含nginx.conf文件和一些子配置文件。

nginx.conf是nginx的主配置文件,用于配置nginx的全局参数、http模块参数、server模块参数等。

在conf目录中,还可以创建子配置文件,用于单独配置不同的虚拟主机或其他功能。

1.2 sbin目录sbin目录是nginx的可执行文件存放目录,主要包含nginx二进制文件。

在sbin目录中,还可能包含一些其他的可执行文件,如nginx-debug、nginx-ctl等。

1.3 logs目录logs目录是nginx的日志文件存放目录,主要包含access.log和error.log两个日志文件。

access.log记录了客户端请求的访问日志,包括请求的时间、来源IP、请求的URL等信息;error.log记录了nginx的错误日志,包括启动错误、配置错误、请求处理错误等信息。

二、配置文件目录nginx的配置文件目录是指nginx.conf文件所在的目录,一般是安装目录的conf子目录。

2.1 nginx.conf文件nginx.conf是nginx的主配置文件,用于配置nginx的全局参数、http模块参数、server模块参数等。

该文件采用简洁的语法格式,通过指令来配置nginx的各项功能和特性。

Linux中安装nginx以及启动、关闭和重启命令

Linux中安装nginx以及启动、关闭和重启命令

Linux中安装nginx以及启动、关闭和重启命令首先当然得去 下载,nginx,我下载是nginx-0.8.49.tar.gz安装nginx前首先得保证安装环境都已经装好,首先检查gcc是否已经装好了,输入命令:gcc -v;装好了则会告诉你版本信息,否则会找不到命令,输入命令: yum -y install gcc; 在线安装;如果没装gcc在安装nginx时候提示找不到C编译器;其次安装nginx还需要PCRE library.,否则在安装nginx时候会提示:./configure: error: the HTTP rewrite module requires the PCRE library ;同样也是在线安装,输入命令:yum -y install pcre-devel openssl openssl-devel;这个准备工作都做好了,进入nginx解压的目录,直接安装就行了./configure --prefix=/usr/nginx (安装目录)makemake installok,一切搞定,剩下的就是nginx详细配置问题了。

启动操作/usr/nginx/sbin/nginx (/usr/nginx/sbin/nginx -t 查看配置信息是否正确)停止操作停止操作是通过向nginx进程发送信号(什么是信号请参阅linux文章)来进行的步骤1:查询nginx主进程号ps -ef | grep nginx在进程列表里面找master进程,它的编号就是主进程号了。

步骤2:发送信号从容停止Nginx:kill -QUIT 主进程号快速停止Nginx:kill -TERM 主进程号强制停止Nginx:pkill -9 nginx另外,若在nginx.conf配置了pid文件存放路径则该文件存放的就是Nginx主进程号,如果没指定则放在nginx的logs目录下。

有了pid文件,我们就不用先查询Nginx的主进程号,而直接向Nginx发送信号了,命令如下:kill -信号类型 '/usr/nginx/logs/nginx.pid'平滑重启如果更改了配置就要重启Nginx,要先关闭Nginx再打开?不是的,可以向Nginx 发送信号,平滑重启。

Linux下nginx编译安装教程和编译参数详解

Linux下nginx编译安装教程和编译参数详解

Linux下nginx编译安装教程和编译参数详解1.安装pcre为了⽀持rewrite功能,我们需要安装pcre复制代码代码如下:# yum install pcre* //如过你已经装了,请跳过这⼀步2.安装openssl需要ssl的⽀持,如果不需要ssl⽀持,请跳过这⼀步复制代码代码如下:# yum install openssl*3.gzip 类库安装复制代码代码如下:yum install zlib zlib-devel4.安装wget下载nginx使⽤,如果已经安装,跳过这⼀步复制代码代码如下:# yum install wget1.下载复制代码代码如下:wget /download/nginx-1.7.0.tar.gz2.解压复制代码代码如下:tar -zxvf nginx-1.7.0.tar.gz3.编译和安装执⾏如下命令:复制代码代码如下:# cd nginx-1.7.0# ./configure --prefix=/usr/local/nginx-1.7.0 \--with-http_ssl_module --with-http_spdy_module \--with-http_stub_status_module --with-pcre–with-http_stub_status_module:⽀持nginx状态查询–with-http_ssl_module:⽀持https–with-http_spdy_module:⽀持google的spdy,想了解请百度spdy,这个必须有ssl的⽀持–with-pcre:为了⽀持rewrite重写功能,必须制定pcre最后输出如下内容,表⽰configure OK了。

复制代码代码如下:checking for zlib library ... foundcreating objs/MakefileConfiguration summary+ using system PCRE library+ using system OpenSSL library+ md5: using OpenSSL library+ sha1: using OpenSSL library+ using system zlib librarynginx path prefix: "/usr/local/nginx-1.7.0"nginx binary file: "/usr/local/nginx-1.7.0/sbin/nginx"nginx configuration prefix: "/usr/local/nginx-1.7.0/conf"nginx configuration file: "/usr/local/nginx-1.7.0/conf/nginx.conf"nginx pid file: "/usr/local/nginx-1.7.0/logs/nginx.pid"nginx error log file: "/usr/local/nginx-1.7.0/logs/error.log"nginx http access log file: "/usr/local/nginx-1.7.0/logs/access.log"nginx http client request body temporary files: "client_body_temp"nginx http proxy temporary files: "proxy_temp"nginx http fastcgi temporary files: "fastcgi_temp"nginx http uwsgi temporary files: "uwsgi_temp"nginx http scgi temporary files: "scgi_temp"# make //确定你的服务器有安装make,如果没有安装请执⾏yum install make# make install启动:直接执⾏以下命令,nginx就启动了,不需要改任何配置⽂件,nginx配置多域名虚拟主机请参考后续⽂章.复制代码代码如下:/usr/local/nginx-1.7.0/sbin/nginx试试访问:直接使⽤curl命令来读取web信息复制代码代码如下:[root@ns conf]# curl -s http://localhost | grep .关闭:复制代码代码如下:/usr/local/nginx-1.7.0/sbin/nginx -s stop重置:当你有修改配置⽂件的时候,只需要reload以下即可复制代码代码如下:/usr/local/nginx-1.7.0/sbin/nginx -s reload整个nginx的安装就到这⾥结束了。

linux上搭建nginx+ftp,实现文件的上传与访问

linux上搭建nginx+ftp,实现文件的上传与访问

linux上搭建nginx+ftp,实现⽂件的上传与访问 ftp服务器搭建1、新建⽤户ftpuser并指定主⽬录为/home/ftpuser(注意:这个⽬录是后⾯存储和读取⽂件的⽬录)<!--创建⽤户并指定主⽬录-->useradd -d /home/ftpuser -m ftpuser<!--修改密码为:Zxit@2018-->passwd ftpuserZxit@2018<!--查看-->cat /etc/passwd2、ftp安装<!--查看是否安装ftp-->rpm -qa |grep vsftpd<!--没有则进⾏安装-->yum install -y vsftpd3、配置注:1、ftp默认的安装⽬录为/etc/vsftpd/2、添加内容:蓝⾊部分表⽰修改,黄⾊部分表添加<!--进⼊配置⽂件编辑模式-->vim /etc/vsftpd/vsftpd.conf<!--配置如下--># 允许匿名⽤户访问:公⽹,为了安全选择关闭anonymous_enable=NO# 被动模式:公⽹,为了安全开启被动模式connect_from_port_20=NOpasv_enable=YESpasv_min_port=24322pasv_max_port=24325pasv_address=**.**.**.243# 让vsftpd同时⽀持IPv4和IPv6listen_ipv6=YESpam_service_name=vsftpd# 只允许名单内⽤户登录userlist_enable=YES# 限制⽤户的ip地址登录tcp_wrappers=YES#指定⽂件存储位置:即上⾯创建⽤户时指定的主⽬录local_root=/home/ftpuserallow_writeable_chroot=YES#修改端⼝:默认端⼝是21listen_port=243214、启动ftp<!--启动-->systemctl start vsftpd.service<!--查看状态-->systemctl status vsftpd.service<!--查看进程-->ps -ef | grep ftpnginx安装1、⽤脚本⾃动安装nginx<!--新建auto_install_nginx.sh--><!--写⼊以下内容-->#!/bin/bash##2019 03 12 15:45:55###设置相关参数NGINX_URL=/download/nginx-1.14.2.tar.gz#NGINX_YL=gcc openssl openssl-devel zlib zlib-devel gcc-c++ pcre pcre-devel libgccNGINX_HOME=/usr/local/nginx###下载安装包###wget $NGINX_URL###安装相关依赖包###yum install -y gcc openssl openssl-devel zlib zlib-devel gcc-c++ pcre pcre-devel libgcc###解压并进⼊到相关⽬录###tar -xzf nginx-1.14.2.tar.gzcd nginx-1.14.2/###预编译###./configure --prefix=$NGINX_HOME --with-http_stub_status_module --with-http_ssl_module###编译###make###安装###make install###启动###$NGINX_HOME/sbin/nginx###关闭防⽕墙###service firewalld stop###查看进程###ps -ef | grep nginx###查看端⼝netstat -ntlp | grep 80<!--执⾏并安装nginx-->auto_install_nginx.sh2、启动ftp的nginx<!--进⼊nginx配置⽂件⽬录-->cd /usr/local/nginx/conf/<!--复制配置⽂件-->cp nginx.conf nginx_ftp.conf<!--进⼊nginx配置⽂件⽬录-->cd /usr/local/nginx/conf/<!--复制配置⽂件-->cp nginx.conf nginx_ftp.conf<!--进⼊配置⽂件编辑模式-->vim nginx_ftp.conf<!--配置如下-->server {listen 24388;server_name 127.0.0.1;location / {root /home/ftpuser;}error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}}<!--启动-->/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx_ftp.conf<!--查看进程-->ps -ef | grep nginx开放端⼝将刚刚配置的端⼝24321-24325(ftp)、24388(nginx_ftp)开放出来。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.安装nginx1.解压安装包分别解压nginx,pcre,openss,nginx-rtmp-module,nginx_mod_h264_streaming到/root/work/nginx_download目录下,进入nginx解压后的目录nginx-1.6.22.安装nginx./configure\--prefix=/root/work/nginx_download/nginx\--with-pcre=../pcre-8.36\--with-http_stub_status_module\--with-http_ssl_module\--add-module=../nginx_mod_h264_streaming-2.2.7\--add-module=../nginx-rtmp-module-master\--with-debug --with-openssl=../openssl-1.0.1 jmake && make install安装成功后,/root/work/nginx_download/nginx\下会有相关软件生成出错解决方法:/vblittleboy/article/details/406164053.配置nginx请将文件安装包\nginx\配置文件\nginx_rtmp.conf 拷贝到nginx/conf下4.启动nginx./sbin/nginx -c conf/nginx_rtmp.conf正常运行后,可以发现有三个nginx进程5.推流利用ffmpeg可以将视频文件已rtmp格式推送到nginx服务器中。

推送流命令如下:./ffmpeg -re -i 7.mp4 -c copy -f flv rtmp://192.168.1.102/hls/16.观看效果在/tmp/app下存在切片生成的ts流,通过hls协议就可以以点播的形式实现直播技术。

可以在pc上以及安卓系统中通过rtmp协议观看。

也可以在ios系统上通过hls协议观看。

相比,hls协议观看延迟要大些,大概延迟在1分钟左右。

7.nginx配置文件(修改配置文件时了解)参考文档:/eguid_1/article/details/51821297#Nginx用户及组:用户组。

window下不指定user nginx nginx ;#通常等于CPU数量或者2倍于CPU。

worker_processes 5进程数改成1,否则客户端点播有问题#错误日志查看出问题时日志位置error_log logs/error.log;#pid(进程标识符):存放路径。

pid logs/nginx.pid;#指定进程可以打开的最大描述符:数目。

worker_rlimit_nofile 204800;这个指令是指当一个nginx进程打开的最多文件描述符数目,理论值应该是最多打开文件数(ulimit -n)与nginx进程数相除,但是nginx分配请求并不是那么均匀,所以最好与ulimit -n 的值保持一致。

现在在linux 2.6内核下开启文件打开数为65535,worker_rlimit_nofile就相应应该填写65535。

这是因为nginx调度时分配请求到进程并不是那么的均衡,所以假如填写10240,总并发量达到3-4万时就有进程可能超过10240了,这时会返回502错误。

events {#工作进程的最大连接数量,根据硬件调整,和前面工作进程配合起来用,尽量大,但是别把cpu跑到100%就行4096;hls_continuous语法:hls_continuous on|off上下文:rtmp, server, application描述:切换HLS 连续模式。

这一模式下HLS 序列号由其上次停止的最后时间开始。

老的分段保留下来。

默认为off。

record off:什么都不录制record all:录制所有record video:只录制视频record audio:只录制音频record keyframes:只录制关键帧record maual:通过接口控制录制的启动停止可以进行组合,比如:record video keyframes:就是只录制视频关键帧#每一个application下都可以设置录制位置,时长等信息rtmp{application live1{}application live2{}application hls{}}此段url为:rtmp://*/live/*http://*/hls/*hls_playlist_length 300s,代表了m3u8中ts流总长度,同时存储的ts总长度也在五分中左右。

hls关键字不会因为live改变。

application live{live on;hls on;hls_path /tmp/app;hls_fragment 10s;hls_playlist_length 300s;hls_sync 100ms;meta copy;#recorder chunked {# record all;# record_max_size 6200K;# record_interval 10s;# record_suffix -%Y-%m-%d-%H_%M_%S.flv;# record_path /tmp/video;# }# recorder all {# record all;# record_suffix -%Y-%m-%d-%H_%M_%S.flv;# record_max_size 6200000K;# record_path /tmp/app3;# }}1、recorder块:可以支持多方录制。

创建录制块,可以在application块中添加多个recorder记录,recorder块中可以使用所有录制指令,recorder块继承application块中的录制指令。

(所有record开头的都是录制指令)。

目前遇到的问题:除了hls录制外,其他方式不支持分片。

貌似hls直播只能是http://*/hls/#录制信息参考application hls {live on;hls on;hls_path /tmp/app; //录制位置(目录需要自己提前创建)hls_fragment 10s; //每个ts平均大小hls_playlist_length 60s; //时移时长hls_sync 100ms; //音画同步差值meta copy;recorder chunked {record all;record_max_size 6200K; //录制文件总大小record_interval 10s;record_suffix -%Y-%m-%d-%H_%M_%S.flv;record_path /tmp/app3;//如果该目录存在,则flv也会录制}#播放时长}hls直播的application如何修改:8.搭建http服务器来观看直播。

目录/root/work/video/wwwroot下有StrobeMediaPlayback播放器,该播放器支持hls直播和rtmp直播。

可以直接访问ip地址的方式来实现访问该http服务网址9.视频点播写明http访问后缀名为.mp4或.flv的路径说明hls支持播放访问:192.168.1.102/视频即可点播10安全沙箱参考:/summerhust/article/details/7721627 crossdomain.xml内容如下1.<?xml version="1.0"encoding="UTF-8"?>2.<cross-domain-policy>3.<allow-access-from domain="*"/>4.</cross-domain-policy>该文件一定要放到根目录中,如何查看根目录:11查看nginx状态注意配置好路径12.ffmpeg录制fms推送的流:需要在rtmp://10.0.192.74/live 后面加上live=113. FMS 5.0用于直播和点播设置1,点播我的FMS 5采用了默认安装,点播目录在 C:\Program Files\Adobe\Adobe Media Server 5\applications\vod\media将你想要用于点播的FLV或者MP4文件放到该文件夹下,然后在浏览器地址栏输入 C:\Program Files\Adobe\Adobe Media Server5\samples\videoPlayer\videoPlayer.html,在STREAM URL中填入点播文件的地址。

其中,FLV文件的格式为rtmp://localhost/vod/TestFlv ,不用加后缀.flv; MP4文件的格式为: rtmp://localhost/vod/mp4:TestMp4.mp42,直播默认安装的情况下,直播目录在C:\Program Files\Adobe\Adobe Media Server5\applications\live,在此目录下新建一个空文件夹test,然后在上面的播放页面 C:\Program Files\Adobe\Adobe Media Server 5\samples\videoPlayer\videoPlayer.html中,STREAM URL后的框里填 rtmp://localhost/live/test ,在你自己的程序中,用bool bRet = rtmpSender.Connect("rtmp://172.25.25.111/live/test"); 来进行连接就可以了。

相见:/ybsun2010/article/details/2464499114.利用nginx搭建RTMP视频点播、直播、HLS服务详见:/article/57/37915?knId=1549。

相关文档
最新文档