资讯专栏INFORMATION COLUMN

php 必备linux环境搭建

Keven / 967人阅读

摘要:我用的是阿里云虽然说安装比较快,但是我更喜欢编译安装,这样比较能理解你的软件都安装到哪里去了。

我用的是阿里云 centos7.2

虽然说yum安装比较快,但是我更喜欢编译安装,这样比较能理解你的软件都安装到哪里去了。

配置的环境是 cenos7.2 + nginx1.12.2 + php7.1.11 + mysql5.7.20

第一波 目录创建
mkdir /alidata

mkdir /alidata/package

//运行程序所在的目录
mkdir –p /alidata/server

//网站根目录
mkdir –p /alidata/webapps
mkdir –p /alidata/logs
第二波 软件安装
make : yum -y install gcc automake autoconf libtool make

g++  : yum install gcc gcc-c++ glibc


php模块 : yum -y install libmcrypt-devel mhash-devel libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel


mysql必备 : yum install libaio*

第三波 软件下载
pcre : wget https://sourceforge.net/projects/pcre/files/pcre/8.41/pcre-8.41.tar.gz

zlib : wget https://sourceforge.net/projects/libpng/files/zlib/1.2.11/zlib-1.2.11.tar.gz

openssl : wget https://www.openssl.org/source/openssl-1.1.0b.tar.gz

nginx : wget http://nginx.org/download/nginx-1.12.2.tar.gz


php : wget http://cn2.php.net/distributions/php-7.1.11.tar.gz


cmake : wget https://cmake.org/files/v3.10/cmake-3.10.0-rc5.tar.gz

ncurses : wget http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz
第四波 添加用户组和用户
groupadd www
useradd -r -g www www

groupadd mysql
useradd -r -g mysql mysql


第五波 开始编译安装
//nginx的编译安装
./configure --prefix=/alidata/server/nginx-1.12.2 --sbin-path=/alidata/server/nginx-1.12.2/sbin/nginx --conf-path=/alidata/server/nginx-1.12.2/nginx.conf --pid-path=/alidata/server/nginx-1.12.2/nginx.pid --user=www --group=www --with-http_ssl_module --with-http_flv_module --with-http_mp4_module  --with-http_stub_status_module --with-select_module --with-poll_module --error-log-path=/alidata/logs/nginx/error.log --http-log-path=/alidata/logs/nginx/access.log  --with-pcre=/root/pcre-8.41 --with-zlib=/root/zlib-1.2.11 --with-openssl=/root/openssl-1.1.0b
make && make install


//php的编译安装
./configure --prefix=/alidata/server/php-7.1.11 --with-config-file-path=/alidata/server/php-7.1.11/etc --enable-fpm --with-mcrypt --enable-mbstring --enable-pdo --with-curl --disable-debug  --disable-rpath --enable-inline-optimization --with-bz2  --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --with-mhash --enable-zip --with-pcre-regex --with-mysqli --with-gd --with-jpeg-dir --with-freetype-dir --enable-calendar
make && install


//cmake的编译安装
./configure --prefix=/alidata/package/cmake
make && install


//ncurses的编译安装
./configure --prefix=/alidata/package/ncurses
make && install

//mysql初始化
/alidata/server/mysql-5.7.20/bin/mysqld –initialize –user=mysql –basedir=/alidata/server/mysql-5.7.20/ –datadir=/alidata/server/mysql-5.7.20/data/
第六波 设置配置文件
//nginx多域名配置

//nginx.conf

user  www www;
worker_processes  2;

error_log  /alidata/logs/nginx/error.log crit;

pid        /alidata/server/nginx-1.12.2/logs/nginx.pid;
worker_rlimit_nofile 65535;

events {
    use epoll;
    worker_connections  65535;
}

http {
    include       mime.types;
default_type  application/octet-stream;

access_log  /alidata/logs/nginx/access.log;

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  65;

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;

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;

log_format "$remote_addr - $remote_user [$time_local] "$request" "
              "$status $body_bytes_sent "$http_referer" "
              ""$http_user_agent" "$http_x_forwarded_for"";

include /alidata/server/nginx-1.12.2/conf/vhosts/*.conf;
include /alidata/server/nginx-1.12.2/conf/proxy/*.conf;
}


//虚拟主机的配置文件 /alidata/server/nginx-1.12.2/conf/vhosts/default.conf
server {
        listen       80;
        server_name  localhost;
        index index.php index.htm index.html;
        root /alidata/webapps;
        location /
        {
           if (!-e $request_filename) {
               rewrite  ^(.*)$  /index.php?s=/$1  last;
               break;
            }
         }

        location ~ .*.(php|php5)?$
        {
                #fastcgi_pass  unix:/tmp/php-cgi.sock;
                fastcgi_pass  127.0.0.1:9000;
                fastcgi_index index.php;
                include fastcgi.conf;
        }
        location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
        {
                expires 30d;
        }
        location ~ .*.(js|css)?$
        {
                expires 1h;
        }
        # 配置页面静态化
        include /alidata/server/nginx-1.12.2/conf/rewrite/default.conf;
        access_log  /alidata/logs/nginx/access/default.log;
        error_log /alidata/logs/nginx/error/default.log;
}


// rewrite规则 /alidata/server/nginx-1.12.2/conf/rewrite/default.conf

rewrite ^(.*)-htm-(.*)$ $1.php?$2 last;
rewrite ^(.*)/simple/([a-z0-9\_]+.html)$ $1/simple/index.php?$2 last;
rewrite ^(.*)/data/(.*).(htm|php)$ 404.html last;
rewrite ^(.*)/attachment/(.*).(htm|php)$ 404.html last;
rewrite ^(.*)/html/(.*).(htm|php)$ 404.html last;




//php配置文件

cp /root/php-7.1.11/php.ini-production /alidata/server/php-7.1.11/etc/php.ini
cd /alidata/server/php-7.1.11/etc
cp php-fpm.conf.default php-fpm.conf
cd /alidata/server/php-7.1.11/etc/php-fpm.d
cp www.conf.default www.conf

// vi www.conf 修改
user = www
group = www
listen = 127.0.0.1:9000
pm.max_children = 100
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35

//mysql配置文件
[client]
port = 3306
socket = /alidata/server/mysql-5.7.20/tmp/mysql.sock
[mysqld]
basedir=/alidata/server/mysql-5.7.20
datadir=/alidata/server/mysql-5.7.20/data
socket=/alidata/server/mysql-5.7.20/tmp/mysql.sock
risks
symbolic-links=0

log-error=/alidata/logs/mysql/error.log
pid-file=/alidata/logs/mysql/mysql.pid

[mysqld_safe]
log-error=/alidata/logs/mariadb/error.log
pid-file=/alidata/logs/mariadb/mariadb.pid


!includedir /etc/my.cnf.d


//my.cnf.d目录下名为mysql-clients.cnf
[mysql]

[mysql_upgrade]

[mysqladmin]

[mysqlbinlog]

[mysqlcheck]

[mysqldump]

[mysqlimport]

[mysqlshow]

[mysqlslap]

亲测可用,有问题可以留言交流

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/39915.html

相关文章

  • PHP程序猿必备的七种武器

    摘要:难道不是吗本文着重介绍对于程序猿来说,居家旅行编程泡妞的七种必备武器,以及若干实用必选。先摆明我们的立场,有节操的程序猿,从来不用浏览器。 作为一个程序猿(又或者是程序媛),出来闯荡江湖,没有几种必杀技在手,那是肯定无法赢得江湖名声的,除了必杀技之外,武器也是很重要的,但是一把青钢剑,肯定是无法赢得万千少男少女的欢心的。就连小李飞刀,人家也没记住他的帅,只是记得了他的飞刀。 难道不是吗...

    stormgens 评论0 收藏0
  • 零基础入门—网站建站教程(新手必备

    摘要:自行建站服务器购买网站搭建网站维护全程自主,弹性灵活。网站部署常见网站类型有以下几种个人博客常用于搭建个人博客网站,尤其适用于首次使用阿里云进行建站的新用户。若您需要在阿里云服务器上部署站点环境安装应用程序,可点此查看网站基础环境搭建服务。相信很多新用户会有这样的疑惑,我要做个网站,到底要使用什么产品,如何能快速完成网站建站呢?搭建网站有两种选择,一种是直接购买建站模板,另一种则是自行建站。...

    booster 评论0 收藏0
  • 零基础入门—网站建站教程(新手必备

    摘要:自行建站服务器购买网站搭建网站维护全程自主,弹性灵活。网站部署常见网站类型有以下几种个人博客常用于搭建个人博客网站,尤其适用于首次使用阿里云进行建站的新用户。若您需要在阿里云服务器上部署站点环境安装应用程序,可点此查看网站基础环境搭建服务。前言相信很多新用户会有这样的疑惑,我要做个网站,到底要使用什么产品,如何能快速完成网站建站呢?搭建网站有两种选择,一种是直接购买建站模板,另一种则是自行建...

    wemall 评论0 收藏0
  • 阿帕云引擎出售,idc管理系统源码,主机服务器管理系统(终生免费升级/续签)

    摘要:阿帕云引擎出售中,阿帕云引擎公有云管理系统,自带实名备案,符合国内监管要求。功能又云服务器托管主机云虚拟主机,域名,主机,服务器,等产品的在线开通销售。云数据库受控端支持数据库的开通及管理。阿帕云引擎出售中,阿帕云引擎公有云管理系统,自带实名、备案,符合国内监管要求。阿帕云引擎主机管理系统可以整合销售各种资源,包括云服务器、虚拟主机、托管等业务的在线弹性购买及在线开通交付;阿帕云引擎主机管理...

    adam1q84 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<