wnmpa或lnmpa 服务器搭建和原理

1.wnmpa

新手可以先使用windows基础安装 明白原理 需要wampserver服务

  安装nginx
    http://jingyan.baidu.com/article/7f41ecec0c5b27593d095cc5.html

进入nginx目录
    start nginx.exe--启动

nginx.exe -s stop--停止nginx

nginx.exe -s reload--重新加载nginx

nginx.exe -s quit--退出nginx

补充:另外找到一个解决方案就是在php的location里面加上这么一句话“fastcgi_intercept_errors on;”,原因是默认情况下只要是php文件,nginx不管他存不存在,都会交给php去处理,这个错误其实是php-cgi报告出来的,加上“fastcgi_intercept_errors on;”这个指令后就让nginx判断404这样的常规错误啦^^

添加虚拟主机
    在nginx.conf 主server{}后添加  include D:/wnmp/nginx/conf/vhost/*.conf;
    新建vhost文件夹 添加类似 miku.conf
    内容为 miku为目录自定义修改
    server {

listen 80;
        server_name localmiku;
        root           D:/wnmp/www/miku;
        error_log  logs/miku.error.log;

location / {
                index  index.html index.htm index.php miku.html;
        }

#规定需要404页面
        error_page  404              /404.html;

#如果使用php-fpm 来处理php
         location ~ \.php$ {
          
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;  
        }
     }

从起nginx

伪静态

原理
      nginx里使用伪静态是直接在nginx.conf 中写规则的,并不需要像apache要开启写模块(mod_rewrite)才能进行伪静态。
      location / {
            root   D:/phpweb/wwwroot;
            index  index.php index.html index.htm;
            rewrite ^(.*)/t(\d+)\.html$ $1/index.php?t=3 last;
        }
        网址输入 t3.html
    仔细观察 rewrite ^(.*)/t(\d+)\.html$ $1/index.php?t=3 last;其实感觉nginx的伪静态规则蛮好写的。就是用正则的基础上,一个rewrite来声明,然后^是伪静态规则开头,(.*)匹配任意字符,这里匹配的就是域名了,t就是你在这里想加的字符,如你可以加apple、orange这样的分类名了,(\d+)匹配的是数字,\.html匹配的是后缀,$就是正则匹配的结束。后面半部分就是要改写的url了,用$1打头,表示域名,/index.php?t=3就是要改写的URL,用last;结束即可。 可以作为独立文件 写成.htaccess 然后引用 并且过滤

.htaccess
    http://www.jb51.net/article/59376.htm

反向代理 apache
    说明
    下面说下何为反向代理,以及为何进行反向代理。按照百科的介绍:反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。说得简明点,按照我的理解,反向代理就是一个服务器负责接收外网的请求,但自己不处理,而是告诉其他的内网服务器去处理,并把人家处理的结果返回给用户。从用户角度来看,请求就是这个代理服务器来处理的,实际上他就是转发了一下,返回人家的结果

好处
    Nginx处理静态内容是把好手,Apache虽然占用内存多了点,性能上稍逊,但一直比较稳健。倒是Nginx的FastCGI有时候会出现502 Bad Gateway错误。一个可选的方法是Nginx做前端代理,处理静态内容,动态请求统统转发给后端Apache。Nginx Server配置如下(测试环境):
    其中Nginx全面接管80端口,Apache退居二线,监听8080端口。

在nginx的配置文件编写中,location的匹配规则基本遵循以下2个方面:
    先匹配普通,再匹配正则 (但正则匹配可能会覆盖普通匹配),一句话描述:正则location让步普通location的严格精确匹配结果;但覆盖普通location的最大前缀匹配结果。
    匹配普通时与编辑顺序无关,匹配正则时与编辑顺序有关

1.不带前缀(普通location):最大前缀匹配或者严格精确匹配
    2.=(普通location):等于匹配(严格精确匹配)
    3.^~(普通location):^表示“非”,~表示“正则”,意思是:不要继续匹配正则,(最大前缀匹配或者严格精确匹配)
    4.~(正则location):区分大小写匹配
    5.~*(正则location):不区分大小写匹配
    [email protected](指定匹配):指定使用location名称

参考nginx.conf
    https://my.oschina.net/u/2257245/blog/412249
    优化nginx.conf
    https://segmentfault.com/a/1190000002797601
    location 匹配规则
    http://54rd.net/html/2015/webserver_0107/13.html
    proxy实例讲解(HTTP,HTTPS)
    http://54rd.net/html/2015/webserver_0125/35.html
    wamp套餐使用fastcgi 提高性能 (wamp套餐默认不使用fastcgi 可在phpifno查看)
    https://commaster.net/content/installing-php-fastcgi-and-zend-opcache-wampserver 老外神文

大概修改以下文件
      主要操作 主要文件nginx.conf vhost httpd.conf httpd-vhosts.conf    
           继承文件 proxy.conf proxy-pass-php.conf    
      额外操作 日志文件 log

2. lnmpa
      为了更有效,快捷 实际操作时候使用 centos 和 lnmpa环境包

  安装教程 http://lnmp.org/  
      LNMPA 目录结构
      LNMPA相关目录文件位置
      LNMPA默认网站配置文件:
        nginx : /usr/local/nginx/conf/nginx.conf
        apache : /usr/local/apache/conf/httpd.conf

FAQ: http://lnmp.org/faq/lnmp-software-list.html

中文文件名乱码
    http://blog.chinaunix.net/uid-26569436-id-3050965.html
    首先查询支持的编码:
    locale -a
    如果没有你需要的编码,例如zh_CN.utf8
    root运行: #dpkg-reconfigure locales
    选择你需要的编码,用空格选中,可多选。tab选择“OK”,回车。
    默认编码选择zh_CN.utf8
    安装你所需要的编码。

修改/etc/profile,
    注释掉
    export LC_ALL=C

增加
    export TERM=xterm-color
    export LC_CTYPE=zh_CN.gb2312
    export LANG=en_US.UTF-8

注意在配置过程中 可能会遇到防火墙无法连接相关服务
    防火墙相关命令如下
    service  iptables start
    service  iptables status
    service  iptables stop
    service  iptables restart
    配置文件目录
    /etc/sysconfig/iptables

内容大致为
    *filter
    :INPUT ACCEPT [4:116]
    :FORWARD ACCEPT [0:0]
    :OUTPUT ACCEPT [1:152]
    -A INPUT -i lo -j ACCEPT
    -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
    -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
    COMMIT

时间: 2024-10-03 23:01:51

wnmpa或lnmpa 服务器搭建和原理的相关文章

DNS服务器搭建

一.DNS工作原理   1.计算机进行域名解析的时候,首先向本地DNS查找是否有地址记录:   2.如果找不到,则由本地DNS向根域"."发出解析请求,   3.从根域一次查找顶级域-->一级域-->二级域-->主机名:有点类似于邮件投递之类:   4.本地DNS经过一系列周折之后最终得到IP地址返回给客户端,并且保存记录一段时间: 二.DNS与bind   早期网络尚未流行的时候,计算机不多   通过/etc/hosts文件来存储主机名与IP对应关系:   随着互联

Redis 复制、Sentinel的搭建和原理说明(转)

Redis 复制.Sentinel的搭建和原理说明 转自:http://www.cnblogs.com/zhoujinyi/p/5570024.html. 背景: Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案,当用Redis做Master-slave的高可用方案时,假如master宕机了,Redis本身(包括它的很多客户端)都没有实现自动进行主备切换,而Redis-sentinel本身也是一个独立运行的进程,它能监控多个master-slave集群,发现master

Linux下DNS服务器搭建详解

 Linux下DNS服务器搭建详解 DNS  即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制.其中通过域名解析出ip地址的叫做正向解析,通过ip地址解析出域名的叫做反向解析. 下面对DNS的工作流程及原理进行简要说明 DNS的查询流程:需要解析服务的Client先查看本机的/etc/hosts:若无结果,则client查看本地的DNS缓存服务器:若无结果,则查找所属域的首选DNS服务器:若此时本地首选DN

[原创]CentOS下Radius服务器搭建

一.   实现环境: 1.系统:CentOS  release  6.6 (Final) 2.需要软件包: 1) freeradius-2.1.12-6.e16.x86_64 freeradius-mysql-2.1.12-6.e16.x86_64 2) ppp-2.4.5-5.e16.x86_64 3) rp-pppoe-3.10-11.e16.x86_64 4) mysql-5.1.73-3.e16_5.x86_64 mysql-devel-5.1.73-3.e16_5.x86_64 5)

LAMP平台搭建及其原理详解

LAMP平台搭建及其原理详解 LAMP平台搭建基础概念 LAMP:提到LAMP很多人会认为LAMP是Linux ,Apache,Mysql,PHP.但是随着技术的不断发展,当今的Lamp,已经不仅仅是这么简单了,这里我们的P除了PHP其实还包括:phython,perl    .而M也不仅仅指的是mysql,也包括mariadb. LAMP平台顾名思义就是Linux,apache,mysql(mariadb),php(phython,perl)的结合.按照他们的结合方式不同,大致可以分成三类:

烂泥:Postfix邮件服务器搭建之虚拟用户配置

本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 在前一篇文章<烂泥:Postfix邮件服务器搭建之软件安装与配置>中,我们介绍了psotfix邮件服务器搭建所需要的软件,以及各个软件的基本配置. 目前已经达到了通过系统用户可以登录到postfix邮件服务器,但是为了管理的方便和系统安全,我们一般是通过postfix的虚拟用户来管理邮件用户的. Postfix虚拟用户的原理是,先在系统中创建一个用户,该用户不能登录到系统,然后把邮件

dchp服务器搭建

DHCP网络服务原理与配置 DHCP服务概述 1.dhcp (Dynamic  Host  Configuration  Protocol)     动态主机配置协议 2.端口号:默认67端口 3.主配置文件             /etc/dhcp/dhcpd 执行脚本                  /etc/init.d/dhcpd      /etc/init.d/dhcrelay 执行参数配置          /etc/sysonfig/dhcp DHCP中继配置       /

FTP-Linux中ftp服务器搭建

一.FTP工作原理 (1)FTP使用端口 [[email protected] ~]# cat /etc/services | grep ftp ftp-data 20/tcp #数据链路:端口20 ftp 21/tcp #控制链路:端口21 (2)FTP连接方式     支持两种连接模式:主动模式(Port)和被动模式(Pasv),这两种模式都是针对数据链路进行的,与控制链路无关. 主动模式工作过程: 1.客户端从自己的一个任意端口(N > 1024)和FTP服务器的21端口建立控制链路2.然

架构之路:nginx与IIS服务器搭建集群实现负载均衡(三)

参考网址:https://blog.csdn.net/zhanghan18333611647/article/details/50811980 [前言] 在<架构之路:nginx与IIS服务器搭建集群实现负载均衡(二)>中提到有好多有趣的地方,接下来就为大家一块儿讲讲在深入研究过程中遇到那些有趣的事情. ·实战之行--发现问题 ·探索之旅--寻出问题原因 ·解决之道--解决问题 [实战之行] 在<架构之路:nginx与IIS服务器搭建集群实现负载均衡(二)>中做了小Demo,当时做