nginx:
1.安装Nginx依赖库:
#安装Nginx的编译环境gcc
yum install gcc-c++
#nginx的http模块使用pcre解析正则表达式所以安装perl兼容的正则表达式库
yum install -y pcre pcre-devel
#nginx使用zlib对http包的内容进行gzip
yum install -y zlib zlib-devel
#nginx不仅支持http协议,还支持https(即在ssl协议上传输http),如果使用了https,需要安装OpenSSL库
yum install -y openssl openssl-devel
或者直接: yum install wget gcc gcc-c++ pcre-devel zlib-devel openssl openssl-devel
2.安装Nginx
cd /usr/local/
wget http://nginx.org/download/nginx-1.15.3.tar.gz
tar -zxvf nginx-1.15.3.tar.gz
rm nginx-1.15.3.tar.gz
mv nginx-1.15.3 nginx
cd nginx
./configure --prefix=/usr/local/nginx
make && make install
#遇到make错误 /usr/local/nginx 路径不存在不管,继续 make install
#添加Nginx环境变量,可以在命令行直接输入Nginx命令
vim /etc/profile
#在最后添加Nginx的路径
export NGINX_HOME=/usr/local/nginx
export PATH=$PATH:$NGINX_HOME/sbin
#重新编译环境变量
source /etc/profile
#启动nginx
cd sbin
./nginx
#我这边启动时报错:
nginx: [alert] could not open error log file: open() "/usr/local/nginx/logs/error.log" failed (2: No such file or directory)
2018/09/25 13:59:56 [emerg] 15555#0: open() "/usr/local/nginx/logs/access.log" failed (2: No such file or directory)
#需要手动创建logs文件夹
mkdir /usr/local/nginx/logs
#再启动
./nginx
建立软连接
ln -s /usr/local/nginx/sbin /usr/bin
php:
#安装php依赖包:
yum install libxml2
yum install libxml2-devel
yum install sqlite-devel
yum install -y libcurl-devel.x86_64
yum install -y epel-release
yum 中没有 oniguruma,所以需要编译安装
yum install autoconf automake libtool -y
wget https://github.com/kkos/oniguruma/archive/v6.9.4.tar.gz -O oniguruma-6.9.4.tar.gz
tar xf oniguruma-6.9.4.tar.gz
cd oniguruma-6.9.4/
./autogen.sh && ./configure --prefix=/usr
make && make install
cd /usr/local
wget http://cn2.php.net/distributions/php-7.2.1.tar.gz
tar -zxvf php-7.2.1.tar.gz
rm php-7.2.1.tar.gz
mv php-7.2.1 php
cd php
./configure --prefix=/usr/local/php --with-zlib --enable-zip --with-openssl --enable-fpm --enable-mbstring --with-libdir=lib64
make
make install
cp php.ini-production /usr/local/php/lib/php.ini
cp sapi/fpm/php-fpm /etc/init.d/php-fpm
#添加执行权限
chmod +x /etc/init.d/php-fpm
#php-fpm的配置文件
cp etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
#设置默认启动php-fpm子进程数和最大启动数
vim /usr/local/php/etc/php-fpm.d/www.conf
#pm = dynamic 表示动态 pm = static 表示静态
pm.max_children = 200
pm.start_servers = 20
pm.min_spare_servers = 10
pm.max_spare_servers = 30
#设置环境变量
vim /etc/profile
#最后一行加入
export PATH=/usr/local/php/bin:$PATH
#刷新环境变量
source /etc/profile
#启动
/etc/init.d/php-fpm
重启php-fpm
#找到master的进程ID
ps -ef | grep php
kill ID
#然后再次启动
/etc/init.d/php-fpm
配置nginx支持php 编辑对应的nginx配置文件,我的配置文件路径/usr/local/nginx/conf/nginx.conf
vim /usr/local/nginx/conf/nginx.conf
#在http模块里面添加下面内容
server {
listen 10102;
server_name xxx.xxx.xxx.xxx;
root /data/www/test;
location / {
index index.html index.htm index.php;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
}
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/www/test$fastcgi_script_name;
include fastcgi_params;
}
}
在/data/www/test下新建index.php
vi index.php
<?php
phpinfo();
?>
重启nginx
nginx -s reload
访问:xxx.xxx.xxx.xxx:10102
安装多个php版本:
刚刚安装了 7.2 版本,再安装一个 7.4 版本为例
下载:
cd /usr/local
wget http://cn2.php.net/distributions/php-7.4.28.tar.gz
tar -xf php-7.4.28.tar.gz
mv php-7.4.28.tar.gz php74
cd php74
配置:
./configure --prefix=/usr/local/php74 --exec-prefix=/usr/local/php74 --bindir=/usr/local/php74/bin --sbindir=/usr/local/php74/sbin --includedir=/usr/local/php74/include --libdir=/usr/local/php74/lib/php --mandir=/usr/local/php74/php/man --with-config-file-path=/usr/local/php74/etc --with-mcrypt=/usr/local/libmcrypt --with-mhash --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --with-gd --with-iconv --with-zlib --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-mbregex --enable-mbstring --enable-ftp --enable-gd-native-ttf --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --without-pear --with-gettext --enable-session --with-curl --with-jpeg-dir --with-freetype-dir --enable-fpm --without-gdbm --disable-fileinfo --enable-opcache=no
安装:
make && make install
配置文件:
cp php.ini-production /usr/local/php74/lib/php.ini
cp etc/php-fpm.conf.default /usr/local/php74/etc/php-fpm.conf
cp etc/php-fpm.d/www.conf.default /usr/local/php74/etc/php-fpm.d/www.conf
修改端口号:
vim /usr/local/php/etc/php-fpm.d/www.conf
把 listen = 127.0.0.1:9000 中的 9000 改成 9001
启动:
/usr/local/php74/sbin/php-fpm
查看:
ps -ef | grep php
mysql 5.7
下载解压:
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
tar -xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
移动重命名
mv mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/mysql
添加用户及其所属组:
groupadd mysql
useradd -r -g mysql mysql
创建数据目录并赋予权限
mkdir -p /data/mysql #创建目录
chown mysql:mysql -R /data/mysql #赋予权限
配置my.cnf
vim /etc/my.cnf
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
初始化数据库
进入mysql的bin目录
cd /usr/local/mysql/bin/
初始化
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
查看密码
cat /data/mysql/mysql.err
启动mysql,并更改root 密码
先将mysql.server放置到/etc/init.d/mysql中
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
启动!!!
service mysql start
ps -ef|grep mysql
重置密码:
./mysql -u root -p
SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
如果不希望每次都到bin目录下使用mysql命令则执行以下命令
ln -s /usr/local/mysql/bin/mysql /usr/bin
composer:
curl -sS https://getcomposer.org/installer | php
#将composer.phar文件移动到bin目录以便全局使用composer命令
mv composer.phar /usr/local/bin/composer
#切换国内源
composer config -g repo.packagist composer https://packagist.phpcomposer.com
#如果提示:
Do not run Composer as root/super user! Seehttps://getcomposer.org/rootfor details
#是因为composer不希望我们用root账号去操作,则需要创建一个账号
useradd -g root composer
#切换到composer账号
su composer
#使用composer账号进行composer命令操作
redis:
下载地址:https://redis.io/download
wget http://download.redis.io/releases/redis-4.0.11.tar.gz
tar -zxvf redis-4.0.11.tar.gz
rm redis-4.0.11.tar.gz
mv redis-4.0.11 redis
cd redis
make
#设置redis服务后台启动
vi redis.conf
设置 daemonize yes
#启动服务
src/redis-server redis.conf
#测试
src/redis-cli
git
yum install -y git
mongodb
下载地址:
cd /usr/local
https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.13.tgz
tar -xf mongodb-linux-x86_64-4.0.13.tgz
mv mongodb-linux-x86_64-4.0.13.tgz mongodb
配置环境变量:
vi /etc/profile
export PATH=$PATH:/usr/local/mongodb/bin
保存退出后:source /etc/profile
创建MongoDB数据存放文件夹和日志记录文件夹,为后面的配置文件使用:
mkdir -p /data/db
mkdir -p /logs
创建MongoDB运行时使用的配置文件:
进入bin目录下:cd /usr/local/mongodb/bin
创建mongodb.conf配置文件:vim mongodb.conf;添加一下内容
dbpath = /data/db #数据文件存放目录
logpath = /logs/mongodb.log #日志文件存放目录
port = 27017 #端口
fork = true #以守护程序的方式启用,即在后台运行
#auth=true #需要认证。如果放开注释,就必须创建MongoDB的账号,使用账号与密码才可远程访问,第一次安装建议注释
bind_ip=0.0.0.0 #允许远程访问,或者直接注释,127.0.0.1是只允许本地访问
启动、停止 MongoDB 服务
cd /usr/local/mongodb/bin
启动: ./mongod -f mongodb.conf
停止: ./mongod --shutdown