精华内容
下载资源
问答
  • lnmp环境搭建
    千次阅读
    2022-01-21 18:25:43

    一.lnmp简介

    LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统

    二.Mysql安装

     Mysql包下载

              路径:  https://www.mysql.com/下载源码包:

       下载mysql-5.6.45-linux-glibc2.12-x86_64.tar(存放在/usr/local/src 中)

    # cd /usr/local/src/
    #  yum install -y vim wget      //下载需要用到的工具包
    # tar -zxvf mysql-5.6.43-linux-glibc2.12-x86_64.tar.gz
    # mv mysql-5.6.43-linux-glibc2.12-x86_64 /usr/local/mysql
    安装和配置:
    # cd /usr/local/mysql
    # useradd -s /sbin/nologin mysql   //建立MySQL用户
    # mkdir -p /data/mysql     //创建datadir,存放数据库文件
    # chown -R mysql:mysql /data/mysql   // 更改权限
    # ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql            //定义运行身份和数据库的安装目录
    需安装相关编译包
    # yum install -y perl-Module-Install
    # cp support-files/my-default.cnf /etc/my.cnf   //复制配置文件
    # vim /etc/my.cnf       //修改配置文件,修改以下内容
    basedir = /usr/local/mysql            //MYSQL包所在路径
    datadir = /data/mysql                 //存放数据库位置
    port = 3306                    //定义MYSQL服务监听的端口号
    server_id = 155                  //定义MYSQL服务的ID号
    socket = /tmp/mysql.sock          //定义MySQL服务监听的套接字地址
    # cp  support-files/mysql.server  /etc/init.d/mysqld     //复制启动脚本文件
    # vim /etc/init.d/mysqld    //修改启动脚本内容如下
    basedir=/usr/local/mysql              //MYSQL包所在路径  
    datadir=/data/mysql                  //存放数据库位置
    # chkconfig --add mysqld         //把mysql服务加到系统服务列表中
    # chkconfig mysqld on          //设置开机自启
    # service mysqld start           //启动服务

           查看否启动:

         # ps aux | grep mysqld   

       三.PHP安装

     PHP下载

         地址为:PHP: Manual Quick Reference  

    ​
    # wget http://cn2.php.net/distributions/php-5.6.30.tar.gz
    # tar -zxvf php-5.6.30.tar.gz
    # useradd -s /sbin/nologin php-fpm
    # cd php-5.6.30
      编译安装
    # ./configure --prefix=/usr/local/php-fpm --with-config-file-path=/usr/local/php-fpm/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --disable-ipv6 --with-pear --with-curl --with-openssl
    # yum install -y ntp make openssl openssl-devel pcre pcre-devel libpng libpng-devel libjpeg-6b libjpeg-devel-6b freetype freetype-devel gd gd-devel zlib zlib-devel gcc gcc-c++ libXpm libXpm-devel ncurses ncurses-devel  libxml2 libxml2-devel imake autoconf automake screen sysstat compat-libstdc++-33 curl curl-deve libcurl-devel
    # yum install -y libmcrypt-develvi
    (注意 epel-release  libmcrypt-devel两个不能一起安装,因为CentOs6默认的yum源没有 libmcrypt-devel这个包,只能借助epel的yum源,所以先安装epel,再安装libmcrypt)
    # make -j4 &&make install
    # cp php.ini-production /usr/local/php-fpm/etc/php.ini
    # vim /usr/local/php-fpm/etc/php-fpm.conf
             //修改配置文件增添如下内容
    [global]
    pid = /usr/local/php-fpm/var/run/php-fpm.pid
    error_log = /usr/local/php-fpm/var/log/php-fpm.log
    [www]
    listen = /tmp/php-fcgi.sock
    listen.mode = 666
    user = php-fpm
    group = php-fpm
    pm = dynamic
    pm.max_children = 50
    pm.start_servers = 20
    pm.min_spare_servers = 5
    pm.max_spare_servers = 35
    pm.max_requests = 500
    rlimit_files = 1024
    # /usr/local/php-fpm/sbin/php-fpm -t
    # cp /usr/src/php-5.6.30/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
    # chmod 755 /etc/init.d/php-fpm
    # useradd -s /sbin/nologin php-fpm
    useradd: user 'php-fpm' already exists
    # service php-fpm start
    # chkconfig php-fpm on
    # ps aux | grep php-fpm
    ​

     三.Nginx安装

    1.nginx简介

         Nginx (engine x)是一个开源、高性能的 HTTP 和反向代理 Web 服务,同时也提供了 IMAP/POP3/SMTP 服务

    使用场景:

    HTTP 服务器,反向代理,负载均衡,第三方插件

    1. Nginx下载及安装

      nginx包下载地址:nginx news

    # tar -zxvf nginx-1.18.0.tar.gz
    # cd nginx-1.18.0
    # ./configure --prefix=/usr/local/nginx
    # make -j4 && make install
    # vim /etc/init.d/nginx
    #!/bin/bash
    # chkconfig: - 30 21
    # description: http service.
    # Source Function Library
    . /etc/init.d/functions
    # Nginx Settings
    NGINX_SBIN="/usr/local/nginx/sbin/nginx"
    NGINX_CONF="/usr/local/nginx/conf/nginx.conf"
    NGINX_PID="/usr/local/nginx/logs/nginx.pid"
    RETVAL=0
    prog="Nginx"
    start()
    {
        echo -n $"Starting $prog: "
              mkdir -p /dev/shm/nginx_temp
           daemon $NGINX_SBIN -c $NGINX_CONF
           RETVAL=$?
           echo
           return $RETVAL
    }
    stop()
    {
           echo -n $"Stopping $prog: "
           killproc -p $NGINX_PID $NGINX_SBIN -TERM
           rm -rf /dev/shm/nginx_temp
           RETVAL=$?
         echo
           return $RETVAL
    }
    reload()
    {
        echo -n $"Reloading $prog: "
        killproc -p $NGINX_PID $NGINX_SBIN -HUP
        RETVAL=$?
        echo
            return $RETVAL
    }
    restart()
    {
             stop
             start
    }
    configtest()
    {
          $NGINX_SBIN -c $NGINX_CONF -t
           return 0
    }
    case "$1" in
      start)
                start
              ;;
          stop)
              stop
              ;;
         reload)
              reload
              ;;
         restart)
            restart
            ;;
         configtest)
            configtest
            ;;
         *)
    echo $"Usage: $0 {start|stop|reload|restart|configtest}"
            RETVAL=1
    esac
    exit $RETVAL
    # chmod 755 /etc/init.d/nginx
    # chkconfig --add nginx
    # chkconfig nginx on
    # > /usr/local/nginx/conf/nginx.conf
    #  vim /usr/local/nginx/conf/nginx.conf
         user nobody nobody;
    worker_processes 2;
    error_log /usr/local/nginx/logs/nginx_error.log crit;
    pid /usr/local/nginx/logs/nginx.pid;
    worker_rlimit_nofile 51200;
    events
    {
        use epoll;
        worker_connections 6000;
    }
    http
    {
        include mime.types;
        default_type application/octet-stream;
        server_names_hash_bucket_size 3526;
        server_names_hash_max_size 4096;
        log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_local]'
        ' $host "$request_uri" $status'
        ' "$http_referer" "$http_user_agent"';
        sendfile on;
        tcp_nopush on;
        keepalive_timeout 30;
        client_header_timeout 3m;
        client_body_timeout 3m;
        send_timeout 3m;
        connection_pool_size 256;
        client_header_buffer_size 1k;
        large_client_header_buffers 8 4k;
        request_pool_size 4k;
        output_buffers 4 32k;
        postpone_output 1460;
        client_max_body_size 10m;
        client_body_buffer_size 256k;
        client_body_temp_path /usr/local/nginx/client_body_temp;
        proxy_temp_path /usr/local/nginx/proxy_temp;
        fastcgi_temp_path /usr/local/nginx/fastcgi_temp;
        fastcgi_intercept_errors on;
        tcp_nodelay on;
        gzip on;
        gzip_min_length 1k;
        gzip_buffers 4 8k;
        gzip_comp_level 5;
        gzip_http_version 1.1;
        gzip_types text/plain application/x-javascript text/css text/htm
        application/xml;
        server
        {
            listen 80;
            server_name localhost;
            index index.html index.htm index.php;
            root /usr/local/nginx/html;
            location ~ \.php$
            {
                include fastcgi_params;
                fastcgi_pass unix:/tmp/php-fcgi.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
            }
        }
    }
    # /usr/local/nginx/sbin/nginx -t
    # service nginx start
    # ps aux | grep nginx    
    测试PHP解析
    # vim /usr/local/nginx/html/2.php
    <?php
    echo "test php scripts.";
    ?>
    # curl localhost/2.php

    .Nginx 配置

     1.默认虚拟主机

     # vim /usr/local/nginx/conf/nginx.conf
    修改主配置文件nginx.cnf,在结束符号}上面加入“ include vhost/*.cnf; ”,
    # mkdir /usr/local/nginx/conf/vhost
    # cd /usr/local/nginx/conf/vhost
    #  vim default.conf
                 内容如下:
    server
    {                    listen 80 default_server; 
                    server_name 123.com;
                    index index.html index.htm index.php;
                     root /data/nginx/default;
    }
    #  /usr/local/nginx/sbin/nginx -t
    # /usr/local/nginx/sbin/nginx -s reload
    # mkdir -p  /data/nginx/default/
    # echo "default_server" > /data/nginx/default/index.html
    # curl -x127.0.0.1:80 aaa.com
    # curl -x127.0.0.1:80 6666.com           
    用户认证
          # vim test.com.conf
    server
    {
       listen 80;
       server_name test.com;
       index index.html index.htm index.php;
       root /data/nginx/test.com;
       location /
       {
          auth_basic  "Auth";
          auth_basic_user_file   /usr/local/nginx/conf/htpasswd;
       }
    }
    #  /usr/local/nginx/sbin/nginx -t
    # /usr/local/nginx/sbin/nginx -s reload
    # yum install -y httpd
    #  htpasswd -c /usr/local/nginx/conf/htpasswd lfb
    #  /usr/local/nginx/sbin/nginx -t
    # /usr/local/nginx/sbin/nginx -s reload
    #  mkdir /data/nginx/test.com
    # echo "test" > /data/nginx/test.com/index.html
    # curl -x127.0.0.1:80 test.com -I # vim /usr/local/nginx/conf/nginx.conf
    修改主配置文件nginx.cnf,在结束符号}上面加入“ include vhost/*.cnf; ”,
    # mkdir /usr/local/nginx/conf/vhost
    # cd /usr/local/nginx/conf/vhost
    #  vim default.conf
                 内容如下:
    server
    {                    listen 80 default_server; 
                    server_name 123.com;
                    index index.html index.htm index.php;
                     root /data/nginx/default;
    }
    #  /usr/local/nginx/sbin/nginx -t
    # /usr/local/nginx/sbin/nginx -s reload
    # mkdir -p  /data/nginx/default/
    # echo "default_server" > /data/nginx/default/index.html
    # curl -x127.0.0.1:80 aaa.com
    # curl -x127.0.0.1:80 6666.com
    
     用户认证
    
    # vim test.com.conf
    server
    {
       listen 80;
       server_name test.com;
       index index.html index.htm index.php;
       root /data/nginx/test.com;
       location /
       {
          auth_basic  "Auth";
          auth_basic_user_file   /usr/local/nginx/conf/htpasswd;
       }
    }
    #  /usr/local/nginx/sbin/nginx -t
    # /usr/local/nginx/sbin/nginx -s reload
    # yum install -y httpd
    #  htpasswd -c /usr/local/nginx/conf/htpasswd lfb
    #  /usr/local/nginx/sbin/nginx -t
    # /usr/local/nginx/sbin/nginx -s reload
    #  mkdir /data/nginx/test.com
    # echo "test" > /data/nginx/test.com/index.html
    # curl -x127.0.0.1:80 test.com -I

    配置验证

    配置完可在Windows上访问地址test.com,文件在C:\Windows\System32\drivers\etc\hosts。打开文件在最后一行输入

    192.168.131.131 test.com

    然后,去浏览器访问会有弹窗出现。

    输入用户名以及密码,就可以正常访问

    # curl -x127.0.0.1:80 -u lfb:000000 test.com -I

     3.域名重定向

    # vim test.com.conf
              修改配置文件
    server
    {
       listen 80;
       server_name test.com test1.com test2.com; 
       index index.html index.htm index.php;
       root /data/nginx/test.com;
    #   location /
    #   {
    #      auth_basic  "Auth";
    #      auth_basic_user_file   /usr/local/nginx/conf/htpasswd;
    #   } 
      if ($host != 'test.com')
       {   rewrite ^/(.*)$ http://test.com/$1 permanent; 
      }
    }
    #  /usr/local/nginx/sbin/nginx -t
    #  /usr/local/nginx/sbin/nginx -s reload
    # curl -x127.0.0.1:80 test1.com/123.txt -I

    4.Nginx的访问日志

    查看Nginx日志格式

    # grep -A2 log_format /usr/local/nginx/conf/nginx.conf
    和httpd类似,也是在著配置文件中定于的日志格式
    combined_realip              日志格式的名字,后面可以调用它;   
    $remote_addr         访问网站的用户的出口ip; 
    $http_x_forwarded_for          代理服务器的ip,如果使用了代理则会记录代理的ip; 
    $time_local              当前的时间; 
    $host                访问的主机名; 
    $request_uri            访问的URL地址; 
    $status             状态码; 
    $http_referer           referer地址;   
    $http_user_agent            user_agent。 
    到虚拟主机配置文件中指定访问日志的路径
    #  vim test.com.conf
    server
    {
       listen 80;
       server_name test.com test1.com test2.com;
       index index.html index.htm index.php;
       root /data/nginx/test.com;
    #   location /
    #   {
    #      auth_basic  "Auth";
    #      auth_basic_user_file   /usr/local/nginx/conf/htpasswd;
    #   }
       if ($host != 'test.com')
       {
       rewrite ^/(.*)$ http://test.com/$1 permanent;
      }
    access_log /tmp/1.log combined_realip;
    }
    ~
    # /usr/local/nginx/sbin/nginx -t
    # /usr/local/nginx/sbin/nginx -s reload
    # curl -x127.0.0.1:80 test.com/111
    # cat /tmp/1.log

    5.日志切割脚本

    # vim /usr/local/sbin/nginx_log_rotate.sh

    6.配置静态文件不记录日志并添加过期时间

    # >test.com.conf
    # vim test.com.conf
    server
    {
    listen 80;
       server_name test.com test1.com test2.com;
       index index.html index.htm index.php;
       root /data/nginx/test.com;
       if ($host != 'test.com')
       {
       rewrite ^/(.*)$ http://test.com/$1 permanent;
       }
       location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$                          
       {
         expires   7d;                             
         access_log off;                           
       }
       location ~ .*\.(js|css)$
       {
         expires    12h;
         access_log off;
       }
       access_log /tmp/1.log combined_realip;
    }
    # /usr/local/nginx/sbin/nginx -t
    # echo "111" > /data/nginx/test.com/1.js
    # echo "222" > /data/nginx/test.com//2.jpg
    # touch /data/nginx/test.com/1.jss
    # curl -x127.0.0.1:80 test.com/1.js -I
    #  curl -x127.0.0.1:80 test.com/2.jpg -I
    # curl -x127.0.0.1:80 test.com/1.jss -I
    # cat /tmp/1.log
    
    Nginx防盗链
    # >test.com.conf
    # vim test.com.conf
    
    server
    {
       listen 80;
       server_name test.com test1.com test2.com;
       index index.html index.htm index.php;
       root /data/nginx/test.com;
       if ($host != 'test.com')
       {
       rewrite ^/(.*)$ http://test.com/$1 permanent;
       }
       location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$
       {
          expires  7d;
          valid_referers none blocked server_names *.test.com;
          if ($invalid_referer)
         {
          return 403;
         }
          access_log off;
       }
       access_log /tmp/1.log combined_realip;
    }
    # /usr/local/nginx/sbin/nginx -t
    # /usr/local/nginx/sbin/nginx -s reload
    #  curl -x127.0.0.1:80 -I -e "http://aaa.com/1.txt" test.com/2.jpg
    #  curl -x127.0.0.1:80 -I -e "http://test.com/1.txt" test.com/2.jpg
    访问控制
    # vim test.com.conf
    添加内容如下
            location /admin/
    
    {
          allow 192.168.131.131;
          allow 127.0.0.1;
          deny all;
    }
    # /usr/local/nginx/sbin/nginx -t
    # /usr/local/nginx/sbin/nginx -s reload
    # mkdir /data/nginx/test.com/lfb/
    # echo "123" > /data/nginx/test.com/lfb/1.html
    # /usr/local/nginx/sbin/nginx -t
    # /usr/local/nginx/sbin/nginx -s reload
    # curl -x127.0.0.1:80 test.com/lfb/1.html
    Nginx解析PHP
    # >test.com.conf
    # vim test.com.conf
    
    server
    
    {
        listen 80;
        server_name test.com test1.com test2.com;
        index index.html index.htm index.php;
        root /data/nginx/test.com; 
        if ($host != 'test.com' ){
               rewrite ^/(.*)$ http://test.com/$1 permanent;
            }
         location ~ \.php$
            {
                include fastcgi_params;
                fastcgi_pass unix:/tmp/phpfcgi.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME /data/nginx/test.com$fastcgi_script_name;
            }
        access_log /tmp/1.log combined_realip;
    }
    # /usr/local/nginx/sbin/nginx -t
    #  /usr/local/nginx/sbin/nginx -s reload
    nginx代理
    # vim proxy.conf
      server
    {
        listen 80;
        server_name www.baidu.com;
        location /
           {
              proxy_pass       http://220.181.38.150;
              proxy_set_header Host    $host;
              proxy_set_header X-Real-IP    $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
           }
    }
    
    # /usr/local/nginx/sbin/nginx -t
    # /usr/local/nginx/sbin/nginx -s reload
    # curl -x127.0.0.1:80 www.baidu.com -I

    更多相关内容
  • 在平常的工作中,我作为PHP程序员经常要搭建一下环境,这个环境就是Linux系统下安装nginx,php,mysql这三个软件,对软件进行配置,然后在浏览器上能够正常打开运行查看项目。CentOS中安装软件有好几种方式,我经常...
  • 系统环境 LNMP安装部署 安装Nginx 解压源码包并进行语法检测[通过字体颜色可以查看是否写错] 编译 make && make install 隐藏版本号 关闭debug,减少编译代码量 修改nginx配置文件 开启nginx 安装MySQL 官网下载...
  • LNMP环境搭建

    千次阅读 2022-03-01 16:16:22
    1,环境要求: 操作系统:Centos 7.X 64 位 关闭防火墙和selinux 保证系统能正常联网 2,网络yum源: 先移除或删除系统自带的yum配置文件,然后下载新的配置文件 [root@localhost yum.repos.d]# yum ...

    一 准备工作

    1,环境要求:

            操作系统:Centos 7.X 64 位

            关闭防火墙和selinux

    保证系统能正常联网

    2,网络yum源:

    先移除或删除系统自带的yum配置文件,然后下载新的配置文件

        

    [root@localhost yum.repos.d]# yum clean all    清楚原有缓存
    [root@localhost yum.repos.d]# yum makecache    建立新的缓存列表
    

    3,安转编译工具和软件依赖包

    yum -y install gcc* pcre-devel openssl openssl-devel zlib-devel ncurses-devel cmake bison libxml2-devel libpng-devel

    二  源码软件包安转

    1.Nginx

    Nginx是一款轻量级的web服务器/反向代理服务器及电子邮件代理服务器,在BSD-like协议下发行。特点是占有内存少,并发能力强。

    1.1 下载Nginx源码包

     1.2 创建用于Nginx运行的用户

    [root@localhost lnmp]# useradd -r -s /sbin/nologin nginx

    1.3 解压并安装

    1.4 上传Nginx启动管理脚本(可以省略)

    2.MySQL

    2.1 下载软件包

     2.2 创建用户运行mysql的用户

    2.3 解压并安装

    [root@localhost yum.repos.d]# make && make install

    2.4 修改目录权限

    [root@localhost mysql-5.5.62]# cd /usr/local/mysql/
    [root@localhost mysql]# chown -R root .
    [root@localhost mysql]# chown -R mysql data

    2.5 生成mysql配置文件

    # cp -a /lnmp/mysql-5.5.62/support-files/my-medium.cnf /etc/my.cnf

    2.6 初始化,生成授权表

     2.7 生成mysql的启动和自启动管理脚本

    [root@localhost mysql]# cd /lnmp/mysql-5.5.62/support-files/
    [root@localhost support-files]# cp -a mysql.server /etc/init.d/mysqld

    [root@localhost support-files]# chmod +x /etc/init.d/mysqld

    [root@localhost yum.repos.d]# chkconfig --add mysqld
    [root@localhost yum.repos.d]# chkconfig  mysqld on

    2.8 修改密码

    [root@localhost ~]# mysqladmin -uroot password 123456

    3.PHP

    3.1 下载软件包

     3.2 解压并安装

    3.3 生成配置文件

    3.4 创建软连接,使用命令更方便

     4.配置Nginx连接PHP

    4.1 Nginx连接PHP需启动php-fpm服务

    [root@localhost etc]# cd  /usr/local/php/etc/php-fpm.d/
    [root@localhost php-fpm.d]# cp -a www.conf.default www.conf
    [root@localhost php-fpm.d]# vim www.conf


    4.2 修改Nginx配置文件,使其能识别.php后缀的文件

    [root@localhost php-fpm.d]# vim /usr/local/nginx/conf/nginx.conf

     4.3 重启PHP服务,创建测试文件,看能否访问

    [root@controller ~]# php-fpm 
    启动PHP

    [root@localhost html]# cat 1.php
    <?php
        phpinfo()
    ?>
    [root@localhost html]# pwd
    /usr/local/nginx/html
    [root@localhost html]#

    能访问即搭建成功

    到此结束,谢谢观看

    展开全文
  • lnmp环境搭建

    2015-07-30 14:18:07
    一步一步教你如何搭建lnmp环境,自动化脚本生成。
  • 兄弟连Linux新版视频教程 LAMP+LNMP环境搭建及配置教程笔记
  • 上一篇博客我们在虚拟机上安装了centos7,接下来,就开始安装lnmp环境吧。 还是跟之前一样,进入命令行后,先使用su命令切换到root权限。 首先配置防火墙 CentOS 7.0默认使用的是firewall作为防火墙 1.关闭...
  • 另外,这里我们搭建的是用于开发的环境,如果需要作为生产环境,则需要注意一些安全性问题,同时,建议不要拷贝php.ini-development文件,而是拷贝 php.ini-production 文件。 查看下PHP的版本: 为了操作方便,可以...

    首先下载PHP安装文件,我们使用源码编译安装PHP5.4.36,到PHP官网下载PHP安装文件。

    e2eb51ec0945f4797c35c7b6dfacbcc6.png

    fafe766d10ea5a86fc7aa0ae0f4a8124.png

    d39bd10461e9af23372f56b90f256177.png

    接下来对PHP源码进行编译安装,进入源码目录之后,执行下列命令安装:

    c6e04c70ad0753fa1306fd9ba2fafd82.png

    注意:如果需要mysql的话,最好是在变异的时候就提供参数并且指定为使用mysqlnd库,否则单独编译 扩展的形式安装只能使用MySQL Client Library。

    出现如下错误:

    94a188c40d85e6605b51f8fe0f31d1c3.png

    提示找不到libxml2,安装一下:

    4d8121e99935eb46632df4b93a2be4bc.png

    继续重新编译,出现如下错误:

    acd7bdf44c11696db2e34177d51077ec.png

    因为我们启用了--with-openssl,因此,我们需要安装openssl-devel:

    3d063cd11b5f7be1d8c3db9f7f50d0bf.png

    再次编译,提示:

    c873bc73f7b6a43f0dd73abf3fc5401a.png

    GD库没有安装:

    1ba4d5bc70c76ed6c9345f9ae68a87b5.png

    继续编译,提示:

    695d774cee260c4f2e5e1a220e6ec99d.png

    没有安装libmcrypt,这个lib在yum中是没有的,因此需要下载下来,手动编译:

    3e88a2e4cf8d5c8e2f9228cbf307a7c8.png

    9cd0932251d2c28a5c9032bc49f9b2ee.png

    998669e92b68f51a00b040aab7eff20d.png

    84427dd2bf3e6fbd1e7a4468be80346c.png

    f9c59ace399bdf4ec854e1d5ce126953.png

    afe6f32f2e889092b4878aea16f67239.png

    再次编译:

    ad7c77ec17d9e2452a38f94a25ba0e44.png

    需要安装libcurl:

    bf33d80f7aa897a8189472a419a69f78.png

    再次编译,没有出错:

    efe9345144692aed276a8eab42dbae13.png

    configure成功,开始安装:

    8713d7f8883c51825516454e2602f457.png

    如果一切顺利的话,唯美意境成功编译并且安装了PHP,安装目录在 / usr / local / php 。

    最后,我们需要提供 PHP 的配置文件php.ini。

    f7387d4b1242d7cf205792d0c9a19c49.png

    注意:PHP的安装目录由 configure的--prefix=目录 参数指定。另外,这里我们搭建的是用于开发的环境,如果需要作为生产环境,则需要注意一些安全性问题,同时,建议不要拷贝php.ini-development文件,而是拷贝 php.ini-production 文件。

    查看下PHP的版本:

    30f6549d3e620c854c1b117aee58632b.png

    为了操作方便,可以将PHP的目录添加到环境变量。编辑~/.bash_profile,在export  PATH上面添加下面一行:

    57c575af911b58ab2a892571c6e3e526.png

    然后执行如下命令:

    007d568e6db921741d5cda89659a7cce.png

    这样,我们就可以直接使用命令,而不用添加目录了。

    95134f7f0d5891984bde25084c83e562.png

    技巧:查看PHP使用的是哪个配置文件?

    42b274f09797c5cb6c195a2918b12430.png

    如果没有安装strace命令,使用yum install strace安装即可。

    安装扩展

    安装完成基本的PHP了,接下来我们需要安装一些符合业务需要的扩展。

    安装yaf开发框架扩展

    执行一下命令,使用pecl进行安装:

    97109973ff5f57eb10672a14a383903c.png

    不出意外的话,上述命令足以完成yaf的安装:

    da6a86c92d13a8cbd1b8ceb598ab6775.png

    接下来,需要在php.ini文件中启用yaf扩展。编辑/ usr / local / php / etc / php.ini

    780f7460b1619519b58b0a0b26314121.png

    安装eAccelerator扩展

    faabb98280df8a959be74f2a72b52641.png

    d3e5fc44c14c86f32e02153a82fa2b45.png

    e93226dcc9f8913b55d68287842285c6.png

    83ab0bbdbf128c1a4e0799bda0fbedd7.png

    327e4028590567a11d9fecf226bd31b0.png

    758e376b457c55524e7cab8487652c16.png

    6c75c05b851206201de26df836a298d6.png

    在 php.ini 中增加eAccelerator的配置信息:

    ec6585e0d8674056540573814cd379cd.png

    执行 php -v可以看到:

    c4573278d823e9474ffc39ff8212bb14.png

    展开全文
  • 1.2 lamp/lnmp 环境搭建

    2022-01-14 23:18:50
    1.2 lamp/lnmp 环境搭建 在不同的操作系统下,漏洞的测试结果也可能会不一样。 简单举例:像文件包含截断,在Windows下与Linux下截断也有不一样的地方。 跟Windows一样,在Linux下也有PHP集成环境包,常用的有...

    我认为,无论是学习安全还是从事安全的人,多多少少都会有些许的情怀和使命感!!!

    1.2 lamp/lnmp 环境搭建

    1. 在不同的操作系统下,漏洞的测试结果也可能会不一样。

          简单举例:像文件包含截断,在Windows下与Linux下截断也有不一样的地方。

    2. Windows一样,在Linux下也有PHP集成环境包,常用的有phpStudy for Linuxlanmp以及XAMPP等等。其中phpStudy支持CentOS、Ubuntu、Debian等Linux操作系统。

    3. phpStudy下载地址:传送门

    4. Linux 终端直接下载并安装phpStudy的方法:
      在这里插入图片描述

    5. 测试phpStudy是否安装成功:
      在这里插入图片描述

    6. 假如你先安装了Apache+PHP 5.3,想要切换到Nginx+PHP 5.4,只需要再运行一次./phpstudy.bin,你就会发现有一行是否安装MySQL提示,选择“不安装”,这样只需要编译Nginx+PHP 5.4,从而节省时间,这样只需要几分钟即可安装成功!!!

    7. 新的安装方法
      在这里插入图片描述

    8. phpstudy相关命令
      在这里插入图片描述

    9. 查看phpstudy首次安装的信息
      在这里插入图片描述

    展开全文
  • 如果没保存,也可以通过下面命令来查看 /etc/init.d/bt default 安装网站环境 首次登录宝塔面板后台,会弹出一键安装环境,我这里选择的是LNMP(Linux+Nginx+MySQL+PHP), 安装前先要看一下软件的版本,最好选择最新...
  • LNMP环境搭建1

    2022-08-04 00:44:41
    4. 配置编译选项:./configure --prefix=/usr/local/php-fpm --with-config-file-path=/usr/l
  • LNMP环境搭建-Centos7

    2020-10-13 23:44:33
    LNMP环境搭建-Centos7 前言 本文重点在于后面的LNMP环境搭建,前面会简单介绍LNMP环境的构成和大致原理,如有偏差处,欢迎大家指正,谢谢。 基本理论说明 LNMP构成 LNMP:Linux系统下Nginx+MySQL+PHP这种网站服务器...
  • LINUX 系统LNMP环境搭建

    2020-09-17 16:41:12
    一、LNMP环境准备 1、操作系统 CentOS7(CentOS7.6全英文,最小化安装) 2、部署规划 编号 主机名称 IP地址(公网IP) 角色 1 web01.itcast.cn 192.168.40.35 Web01服务器 我们一般对外提供服务的服务器的IP地址...
  • 主要介绍了ubuntu 20.04上搭建LNMP环境的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • LNMP环境搭建Wordpress博客-附件资源
  • 本人环境: Ubuntu18 如有不正, 欢迎指正, 大家一起共同进步 软件源 Ubuntu 默认使用的官方源的服务器在欧洲,从国内访问速度很慢。 所以在此先修改软件源为国内的, 例如: 阿里云源, 清华源等等 整体步骤: 查询自己...
  • 1. 安装MySQL 之前做过MySQL安装,这里便不再做了,想知道MySQL安装步骤可点下面链接 mysql 2. 安装Nginx [root@xianxin ~]# cd /etc/yum.repos.d/ [root@xianxin yum.repos.d]# vi nginx.repo (添加以下内容) ...
  • 基于LNMP环境搭建nextcloud私有化云盘

    千次阅读 2019-08-17 16:37:49
    LNMP环境搭建nextCloud 概述 LNMP环境是指,linux+nginx+mysql+php,本次搭建的linux系统版本为CentOS7,如果已经具备这些环境可直接从第四步开始。下面是详细搭建步骤。 1.先删除系统可能自带的PHP,nginx rpm...
  • lnmp环境搭建报错处理 lnmp环境搭建报错处理 lnmp环境搭建报错处理

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 17,481
精华内容 6,992
关键字:

lnmp环境搭建

友情链接: LFSR.rar