• lnmp环境搭建


    一、安装Nginx
    下载地址:http://nginx.org/download/nginx-1.8.0.tar.gz
    安装依赖库
    yum -y install gd-devel libtool libjpeg-devel libpng-devel freetype-devel libxml2 libxml2-devel zlib-devel bzip2 bzip2-devel libcurl-devel libxslt-devel openssl-devel glibc-devel glib2-devel libmcrypt-devel curl curl-devel pcre pcre-devel perl-devel perl-ExtUtils-Embed GeoIP GeoIP-devel GeoIP-data epel-release --with-ipv6
     
    下载 编译安装
    --prefix 安装路径
    --sbin-path nginx执行文件目录
    --conf-path 配置文件路劲
    --user 运行nginx的用户
    --group 运行nginx的用户组
    tar zxf nginx-1.10.2.tar.gz
    cd nginx-1.8.0
    ./configure --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/tmp/client_body --http-proxy-temp-path=/var/lib/nginx/tmp/proxy --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi --http-scgi-temp-path=/var/lib/nginx/tmp/scgi --pid-path=/run/nginx.pid --lock-path=/run/lock/subsys/nginx --user=nginx --group=nginx --with-file-aio --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_slice_module --with-http_stub_status_module --with-http_perl_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-pcre --with-pcre-jit --with-stream=dynamic --with-stream_ssl_module --with-debug
    make ;
    make install
    以上已安装完毕,开启nginx服务,/usr/sbin/nginx。测试开启成功否 curl -I http://127.0.0.1
     
    二、安装PHP
    wget http://cn2.php.net/distributions/php-5.6.34.tar.gz
    tar zxf php-5.6.34.tar.gz
    cd php-5.6.34
    ./configure --prefix=/usr/share/php --with-config-file-path=/etc --with-fpm-user=nginx --with-gd --with-xsl --with-bz2 --with-zlib --with-curl --with-pear --without-iconv --with-mcrypt -with-gettext --with-openssl --with-libxml-dir --with-png-dir --with-jpeg-dir --with-freetype-dir --enable-ftp --enable-fpm --enable-exif --enable-soap --enable-bcmath --enable-calendar --enable-sockets --enable-mbstring --enable-gd-native-ttf --disable-rpath --disable-debug --enable-pdo --with-pdo-mysql --with-mysql --with-config-file-scan-dir=/etc/php.d
    make ; make install
     
    --prefix= 指定安装路径
    --with-config-file-path 指定 php.ini 存放位置
    --with-fpm-user 运行fpm的用户
    --enable-fpm Nginx 连接 php 全靠这个东西,如果没有它,你的 Nginx 就不能解析 php
    --with-config-file-scan-dir 加载模块的启动文件 为ini结尾的文件 直接在该文件加载so模块文件
     
    拷贝PHP配置
    cp php.ini-production /etc/php.ini
    fpm启动脚本,把配置里的程序 、配置、 pid 等路径修改到对应目录
    cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
    chmod a+x /etc/init.d/php-fpm 添加权限
    fpm配置文件
    cp /usr/share/php/etc/php-fpm.conf.default /etc/php-fpm.conf
    修改 /etc/php-fpm.conf 根据实际情况修改即可
    25 pid = /run/php-fpm.pid
    33 error_log = /var/log/php-fpm/error.log
    224 pm = static 设置固定启动fpm进程数 动态的增减的时候也有系统资源开销
    pm.max_children = 340 pm为静态是有效 一个进程按40M左右算
    441 slowlog = /var/log/php-fpm/www-slow.log 慢日志 必须开启下面超时时间才有效
    447request_slowlog_timeout = 1
    535 php_admin_value[error_log] = /var/log/php-fpm/www-error.log 覆盖 php.ini中的 error_log 参数
    536 php_admin_flag[log_errors] = on
    最后可直接通过系统服务开启fpm serveice php-fpm start|stop|restart
     
    动态加载PHP扩展 例如:
    在/etc/php.d/mysqli.ini 目录下加载扩展
    内容
    ; Enable mysqli extension module
    extension=mysqli.so
    把对应的扩展文件.so 放到 /usr/share/php/lib/php/extensions/no-debug-non-zts-20131226/ 下 编译so文件时提示路径
    加入开机启动
    chkconfig --add php-fpm
    chkconfig php-fpm on
     
    最后配置nginx配置
    user nginx;
    worker_processes 8;
    error_log /var/log/nginx/error.log;
    pid /run/nginx.pid;
    worker_rlimit_nofile 100000;
     
    include /usr/share/nginx/modules/*.conf;
    events {
    worker_connections 65000;
    multi_accept off;
    use epoll;
    accept_mutex off;
    }
    http {
    log_format main '$remote_addr - $remote_user [$time_local] "$request" '
    '$status $body_bytes_sent "$http_referer" '
    '"$http_user_agent" "$http_x_forwarded_for"';
    access_log /var/log/nginx/access.log main;
     
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
     
    types_hash_max_size 2048;
     
    include /etc/nginx/mime.types;
    default_type application/octet-stream;
    gzip on;
    gzip_min_length 0;
    gzip_buffers 8 32k;
    gzip_http_version 1.1;
    gzip_comp_level 5;
    gzip_types text/plain application/javascript application/json application/x-javascript text/javascript text/css application/xml applicati
    on/xml+rss;
    gzip_vary on;
    gzip_proxied expired no-cache no-store private auth;
    gzip_disable "MSIE [1-6].";
     
    #include /etc/nginx/conf.d/*.conf;
     
    server {
    listen 80;
    server_name localhost;
    root /home/talentwalker/wwwroot/;
     
    location / {
    }
     
    error_page 404 /404.html;
    location = /40x.html {
    }
     
    # redirect server error pages to the static page /50x.html
    #
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
    # root html;
    }
    location ~ .php {
    add_header Access-Control-Allow-Methods "POST, GET, OPTIONS";
    add_header Access-Control-Allow-Headers CHANNELID,SID,SERVERCODE;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_split_path_info ^(.+.php)(.*)$; #pathinfo模式
      fastcgi_param PATH_INFO $fastcgi_path_info; #pathinfo模式
      include fastcgi_params;
      fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
    }
    location /jenkins {
    proxy_pass http://127.0.0.1:8080/jenkins;
    }
    }
    }
     
    三、安装mysql
    yum -y install make gcc-c++ cmake bison-devel ncurses-devel
    cmake -DCMAKE_INSTALL_PREFIX=/usr/share/mysql -DMYSQL_DATADIR=/mnt/data -DSYSCONFDIR=/etc -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DMYSQL_TCP_PORT=3306 -DWITH_DEBUG=1
    make
    make insatll
     
    初始化mysql数据库 数据存储目录必须有
    /usr/share/mysql/scripts/mysql_install_db --user=mysql --datadir=/mnt/data
    mysql配置文件
    cp /usr/share/mysql/support-files/my-default.cnf /etc/my.cnf
    [client]
    #password = your_password port = 3306 socket = /data/mysql/mysql.sock default-character-set=utf8
    # Here follows entries for some specific programs
    # The MySQL server
    [mysqld]
    port = 3306
    character_set_server=utf8
    basedir=/data/mysql
    datadir=/data/mysql/data
    socket = /data/mysql/mysql.sock
    log-error=/var/log/mysql/error.log
    log=/var/log/mysql/mysql.log
    long_query_time=2
    log-slow-queries= /usr/local/mysql/log/slowquery.log
    将MySQL执行命令添加入PATH 如果有多个用:隔开
    PATH=$PATH:/usr/share/mysql/bin export PATH
    将MySQL设置为系统服务并启动服务
    cp support-files/mysql.server /etc/init.d/mysqld
    最后可直接通过系统服务开启mysqld serveice mysqld start|stop|restart
    设置mysql管理员密码
    mysqladmin -u root password "123456";
     
    环境搭建基本就完成了
     
     
     
     
  • 相关阅读:
    最佳实践丨三种典型场景下的云上虚拟IDC(私有池)选购指南
    总渲染时长超3亿核小时,阿里云助力《白蛇2:青蛇劫起》提升视效
    阿里云成为首个通过“虚拟化云平台性能测试(大规模)”的云厂商
    AI性能提升2-3倍!搭载 NVIDIA A10 GPU的阿里云gn7i服务器开启邀测
    最佳实践丨阿里云ECI如何助力西软构建酒店行业多租户高弹性PaaS平台?
    暑期大放“价”,轻量应用服务器9元包月!
    报名通道开启!原生安全二倍速:探秘基础设施的内生“免疫系统"
    40万奖金等你来挑战!阿里云ECS Cloudbuild开发者大赛重磅开启
    Ubuntu安装桌面环境
    tinkphp3.0 execl导出问题
  • 原文地址:https://www.cnblogs.com/fwqblogs/p/10132205.html
Copyright © 2020-2023  润新知