zoukankan      html  css  js  c++  java
  • Apache和nginx相关知识

     

    1       Apache和nginx相关知识

    1.1     Apache配置文件

    • Listen 80

    Listen主要侦听web服务端口状态,默认为:80,即侦听所有的地址的80端口,注意这里也可以写成IP地址的侦听形式,不写即默认的地址:0.0.0.0

    • ServerName 127.0.0.1:80/localhost:80

    此选项主要用指定Apache默认的服务器名以及端口,默认参数值设置为:ServerName localhost:80即可

    • DocumentRoot “/var/www/html”

    网页文件存放的目录

    • <Directory "/var/www/html">…</ Directory>

    对 /var/www/html目录的一个权限的设置

    例如:

    <Directory "/var/www/icons">                 Apache通过配置项 <Directory 所需配置的目录>来实现的

        Options Indexes MultiViews FollowSymLinks   默认配置

        AllowOverride None                     

        Order allow,deny                         命令允许、拒绝

        Allow from all                           允许来自任何地方的请求

    </Directory>

    注意,凡是和目录相关的配置,都应该在Directory段完成。

    • Alias /download/ "/var/www/download/“

    Alias /实际访问路径/ “网站路径“

    对于不在DocumentRoot指定的目录内的页面,既可以使用符号连接,也可以使用别名。

         访问时可以输入:http://www.custing.com/download/

    • DirectoryIndex index.html index.html.var

    主要设置Apache默认支持的首页页面,默认只支持:index.html首页,如要支持其他类型的首页,需要在此区域添加:如index.php表示支持index.php类型首页

    例如:

    Apache:设置首页运行index.html index.php的顺序

     

    问:如何让Apache能自动运行index.php?

    答:编辑httpd.conf文件,找到DirectoryIndex在后面加一个index.php。
    例如,我把DirectoryIndex这行改为:DirectoryIndex index.html index.htm index.php index.html.var 
    保存编辑的内容,重新启动Apache就可以实现了。

     

    • LoadModule version_module modules/mod_version.so

    启动时加载的模块, version_module 模块名,modules/mod_version.so模块位置

    • Include conf/*conf

    引入配置文件

    在httpd.conf中有一句,Include conf.d/*.conf

    这个指令的意思就是将 conf.d目录下所有以 .conf 结尾的文件都引进来。

    1.2     Apache配置php

    安装php和php-fpm

     Yum/apt-get安装

    $ yum/apt-get install php php-fpm

    Php 5.3.3版本之后(源码安装的话)在./configure的时候带 –enable-fpm参数即可开启PHP-FPM。

    $ ./configure –enable-fpm

    修改Apache配置文件

    编辑 /usr/local/apache2/conf/httpd.conf 文件时要注意:添加模块

    LoadModule php5_module modules/libphp5.so

    找到

    AddType  application/x-compress .Z 

    AddType  application/x-gzip .gz .tgz  

    在下面添加:   

    AddType application/x-httpd-php .php(使Apcche支持PHP)   

    AddType application/x-httpd-php-source .php5

    找到:

    <IfModule dir_module> DirectoryIndex index.html  </IfModule>

    添加:

    <IfModule dir_module> DirectoryIndex index.html index.php  </IfModule>

    1.3     Nginx配置文件

    user www www;

    定义Nginx运行的用户和用户组

    http{ server{ location{ } …} ..}

    整个http设置,虚拟主机设置,特定url设置,location后面接的是正则

    listen 80

    监听端口

    server_name www.jd.com jd.com;

    域名可以有多个,用空格隔开,本地localhost

    root /data/www/jd;

    文件根目录

    index index.html index.htm index.php

    默认主目录

    备注:drwx------中的第一位标识该文件的类型标识,如d为目录

    1.4     Nginx配置php

    • 安装php和php-fpm

    Yum/apt-get安装

    $ yum/apt-get install php php-fpm

    Php 5.3.3版本之后(源码安装的话)在./configure的时候带 –enable-fpm参数即可开启PHP-FPM。

    $ ./configure –enable-fpm

    修改nginx配置文件

    location ~ .php$ {

    root /var/www; #指定phph根目录

    fastcgi_index index.php;

    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name

    include fastcgi_params;

          }

    1.5     Apache和nginx原理

    浏览器将Http请求发送给服务器(默认80端口),Apache或者Nginx在监听端口,一旦有请求过来Apache或者Nginx将会处理请求,然后将处理的结果通过端口返回给浏览器,浏览器拿到文件后根据文件进行渲染,最后展示。

    1.6     Nginx的server虚拟主机配置

    两种方式:

    1、直接在主配置文件中设置server字段配置虚拟主机

    2、使用include字段设置虚拟主机

    ***************以下是server主机设置*******

    server { 
    listen 80;                    //监听端口为80 
    server_name www.88181.com;  //设置主机域名 
    charset gb2312;              //设置访问的语言编码 
    access_log logs/www.88181.com.access.log main; //设置虚拟主机访问日志的存放路径及日志的格式为main 
    location / {                  //设置虚拟主机的基本信息 
    root sites/www;             //设置虚拟主机的网站根目录 
    index index.html index.htm;   //设置虚拟主机默认访问的网页 

    location /nginx_status{..}

    // 查看nginx当前的状态情况,需要模块 “--with-http_stub_status_module”支持 ,这个模块能够获取Nginx自上次启动以来的工作状态,此模块非核心模块,需要在编译的时候手动添加编译参数 --with-http_stub_status_module

    1.7     其他常用知识

    1.7.1   启动多个端口

        nginx 在 server{…}中listen xx;这个配置 可以使用多个server{}进行多个端口配置

    1.7.2   查看Apache/Nginx的配置文件位置

        Apache/Nginx –V 如果有conf后缀的文件即为该服务的配置文件,没有的话,找到文件的安装目录查看

    1.7.3   查看进程和端口

         root用户下 netstat –tupln

    1.7.4   根据进程查找执行文件路径

        根据端口找到pid(进程id)后, cd  /proc/xxxx   , ll    显示的 exe指向的路径就是。

    1.7.5   关于nginx/Apache启动时输出

        Warn 只是警告 出现ERROR、EMERG这样的输出才会导致无法启动。

    1.7.6   关于nginx/Apache启动和关闭

    nginx是可以通过ps aux | grep nginx 获取pid 通过 kill -9 xxxx杀掉 ,或者 到nginx安装目录下 ./nginx –s stop  启动./nginx   重启 ./nginx –s reload(加载配置文件重启)

    Apache 不能用kill -9 xx的方式。只能到目录下采用 ./apachectl  stop|restart|start方式或者service apache|apache2|httpd|http stop|restart|start启动或者关闭。

     
     
  • 相关阅读:
    MySQL
    Shell运算符:Shell算数运算符、关系运算符、布尔运算符、字符串运算符等
    ps
    top
    sed
    nav响应范围一定要足够宽
    续上获取input的checked用prop时返回的是布尔值
    jq不应该用attr获取input的check值
    jq祖级元素
    一些jquery的坑
  • 原文地址:https://www.cnblogs.com/jxba/p/9076019.html
Copyright © 2011-2022 走看看