按量付费,选择华北3(张家口)有优惠的服务器。
实验环境可以先选择CPU1核, 内存2GB即可, 项目运行后期可增加。
网络不用改默认即可, 因为是按流量付费,所以带宽可以选择最高。
# wget https://cdn2.lmonkey.com/e7977 ... 0.zip
echo $? #安装软件过程中由于频繁刷屏,建议在每个步骤结束后执行此命令
./configure #此步骤报错多是依赖关系没解决或是编译工具未安装(注意关键词提示)
make #此步骤多是编译时选项参数书写错误、不存在、漏写等问题
#一般需要检查上一个步骤:./configure --help
# yum -y install gcc gcc-c++ make
安装c++ 编译器:yum -y install gcc-c++ ,再次编译通过。
# tar -xf libxml2-2.9.9.tar.gz五、安装 Apache
# cd /root/lamp/libxml2-2.9.9
# ./configure --prefix=/usr/local/libxml2/
# make
# make install
# tar -xf httpd-2.4.41.tar.gz
# tar -xf apr-1.6.5.tar.gz
# tar -xf apr-util-1.6.1.tar.gz
# tar -xf pcre-8.43.tar.gz
# tar -xf zlib-1.2.11.tar.xz
# cp -a /root/lamp/apr-1.6.5 /root/lamp/httpd-2.4.41/srclib/apr
# cp -a /root/lamp/apr-util-1.6.1 /root/lamp/httpd-2.4.41/srclib/apr-util
缺少 expat库, 需要先安装否则在编译apr时会出错。apr-util致命错误:expat.h:没有那个文件或目录
#yum install -y expat-devel
# cd /root/lamp/pcre-8.43
# ./configure
# make
# make install
# cd /root/lamp/zlib-1.2.11
# ./configure
# make
# make install
# yum -y install openssl-devel
# cd /lamp/httpd-2.4.41
# ./configure \
--prefix=/usr/local/apache2 \
--sysconfdir=/usr/local/apache2/etc \
--with-included-apr \
--enable-so \
--enable-deflate=shared \
--enable-expires=shared \
--enable-rewrite=shared \
--enable-ssl
# make
# make install
# /usr/local/apache2/bin/apachectl start
# ps aux | grep httpd
# netstat -tlun
Listen 0.0.0.0:80
搜索 ServerName
(约在 200行左右)
改为 ServerName localhost:80(并且去掉前面的#注释)
# yum -y install ncurses-devel
# cd /root/lamp/ncurses-6.1
# ./configure --with-shared --without-debug --without-ada --enable-overwrite
# make
# make install
yum -y install cmake3 bison
# yum -y install centos-release-scl4. 加大交换分区,需要最少1G
yum -y install devtoolset-8-gcc devtoolset-8-gcc-c++ devtoolset-8-binutils
scl enable devtoolset-8 bash
echo "source /opt/rh/devtoolset-8/enable" >>/etc/profile
export CC=/opt/rh/devtoolset-8/root/usr/bin/gcc export
CPP=/opt/rh/devtoolset-8/root/usr/bin/cpp export
CXX=/opt/rh/devtoolset-8/root/usr/bin/c++
以下为替换系统GCC
ln -s /opt/rh/devtoolset-8/root/usr/bin/* /usr/local/bin/
hash -r
gcc --version
mkdir -p /var/cache/swap/
dd if=/dev/zero of=/var/cache/swap/swap0 bs=1M count=1024
chmod 0600 /var/cache/swap/swap0
mkswap /var/cache/swap/swap0
swapon /var/cache/swap/swap0
但是这样并不能在系统重启的时候自动挂载交换分区, 这样我们就需要修改 fstab.
修改 /etc/fstab 文件, 新增如下内容:
/var/cache/swap/swap0 none swap sw 0 0
#free -m 最后一行就是交换分区5. 安装 MySQL
# tar -xf mysql-8.0.17.tar.gz
#useradd -r -s /sbin/nologin mysql
#cd /root/lamp/mysql-8.0.17/
#cmake3 \
#cd /root/lamp/mysql-8.0.17/
#cmake3 \
-DDOWNLOAD_BOOST=1 #使用BOOST库,
-DWITH_BOOST=/boot/ \ #使用BOOST库的位置
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #安装位置
-DCMAKE_C_COMPILER=/opt/rh/devtoolset-8/root/usr/bin/gcc #用指定的gcc编译器
-DCMAKE_CXX_COMPILER=/opt/rh/devtoolset-8/root/usr/bin/g++ \ 用指定的g++编译器
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \ #指定 socket(套接字)文件位置
-DDEFAULT_CHARSET=utf8 \ #扩展字符支持
-DDEFAULT_COLLATION=utf8_general_ci \ #默认字符集
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \ #默认字符校对
-DWITH_MYISAM_STORAGE_ENGINE=1 \ #安装 myisam存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #安装 innodb存储引擎
-DWITH_MEMORY_STORAGE_ENGINE=1 \ #安装 memory存储引擎
-DWITH_READLINE=1 \ #支持 readline库
-DFORCE_INSOURCE_BUILD=1 \ #启用加载本地数据
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/data/mysql \ #指定数据文件的位置
-DMYSQL_USER=mysql \ #指定 mysql运行用户
-DMYSQL_TCP_PORT=3306 #指定 mysql端口
# make
# make install
MySQL安装后需要调整相应配置文件和参数才能正常运行
#chown -R mysql:mysql /usr/local/mysql
#mkdir -p /data/mysql/
#chown -R mysql:mysql /data/mysql/
#/usr/local/mysql/bin/mysqld --initialize --user=mysql \
--basedir=/usr/local/mysql --datadir=/data/mysql
#vi /etc/my.cnf
[mysqld]
datadir=/data/mysql
basedir=/user/local/mysql
socket=/tmp/mysqld.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
# mkdir /var/log/mariadb
# touch /var/log/mariadb/mariadb.log
# chown -R mysql:mysql /var/log/mariadb/
# mkdir /var/run/mariadb/ 最好改个目录,重启这个目录会消失,就不能启动 mysql
# chown -R mysql:mysql /var/run/mariadb/
/usr/local/mysql/bin/mysqld_safe --user=mysql &
# /usr/local/mysql/bin/mysql -u root -p
Enter password: v.Mf<E8q0wlc
mysql>
进入之后必须先更改密码才能操作
mysql>alter user root@'localhost' identified by "123456";
mysql>show databases;
mysql>use test;
mysql>show tables;
mysql>exit
# /usr/local/mysql/bin/mysqladmin -uroot -p shutdown七、安装 PHP1. 安装 libxml2
Enter password:123456
# tar -xf libxml2-2.9.9.tar.gz2. 安装 libmcrypt
# cd /root/lamp/libxml2-2.9.9
# ./configure --prefix=/usr/local/libxml2/
# make
# make install
# tar -xf libmcrypt-2.5.8.tar.gz
# cd /root/lamp/libmcrypt-2.5.8
# ./configure --prefix=/usr/local/libmcrypt/
# make
# make install
# cd /root/lamp/libmcrypt-2.5.8/libltdl3. 安装 mhash
# ./configure --enable-ltdl-install
# make
# make install
# tar -xf mhash-0.9.9.9.tar.gz4. 安装 mcrypt
# cd /root/lamp/mhash-0.9.9.9
# ./configure
# make
# make install
# tar -xf mcrypt-2.6.8.tar.gz
# cd /lamp/mcrypt-2.6.8
# export LD_LIBRARY_PATH=/usr/local/libmcrypt/lib:/usr/local/lib
# ./configure --with-libmcrypt-prefix=/usr/local/libmcrypt5. 安装 libpng
# make
# make install
# tar -xf libpng-1.6.7.tar.gz6. 安装 jpeg6
# cd /root/lamp/libpng-1.6.7
# ./configure --prefix=/usr/local/libpng
# make
# make install
#tar -xf jpegsrc.v9c.tar.gz
# cd /root/lamp/jpeg-9c/
# ./configure --prefix=/usr/local/jpeg9/ --enable-shared --enable-static
# make
# make install
# tar -xf freetype-2.10.0.tar.gz
# cd /root/lamp/freetype-2.10.0
# ./configure --prefix=/usr/local/freetype/
# make
# make install
#yum install freetype-devel
# tar -xf php-7.3.10.tar.gz
# cd /root/lamp/php-7.3.10
# ./configure \
--prefix=/usr/local/php/ \ #指定配置文件目录
--with-config-file-path=/usr/local/php/etc/ \
--with-apxs2=/usr/local/apache2/bin/apxs \ #指定 apache动态模块位置
--with-libxml-dir=/usr/local/libxml2/ \ #指定 libxml位置
--with-jpeg-dir=/usr/local/jpeg9/ \ #指定 jpeg位置
--with-png-dir=/usr/local/libpng/ \ #指定 libpng位置
--with-freetype-dir=/usr/local/freetype/ \ #指定 freetype位
--with-mcrypt=/usr/local/libmcrypt/ \ #指定 libmcrypt位置
--with-gd \ #启用 gd库
--enable-soap \ #支持 soap服务(api)
--enable-mbstring=all \ #支持多字节,字符串
--enable-sockets \ #支持套接字
--with-pdo-mysql=/usr/local/mysql \ #启用 mysql的 pdo模块支持
--with-pdo-mysql=mysqlnd \ Mysql Native Driver 简称:mysqlnd
--with-gd --without-pear #不安装 pear(Composer代替)
# make
# make install
# mkdir /usr/local/php/etc
# cp /root/lamp/php-7.3.10/php.ini-production /usr/local/php/etc/php.ini
# vim /usr/local/apache2/etc/httpd.conf
AddType application/x-httpd-php .php
# /usr/local/apache2/bin/apachectl stop
# /usr/local/apache2/bin/apachectl start
# vim /usr/local/apache2/htdocs/test.php
<?php
phpinfo();
?>
#cd /root/lamp/php-7.3.10/ext
# cd openssl/
#mv config0.m4 config.m4
# /usr/local/php/bin/phpize
# ./configure --with-openssl --with-php-config=/usr/local/php/bin/php-config
# make
# make install
#tar -xf pecl-memcache-4.0.4.tar.gz11.修改 php配置文件
# cd pecl-memcache-4.0.4
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config
# make
# make install
# vi /usr/local/php/etc/php.ini
extension_dir="/usr/local/php/lib/php/extensions/no-debug-zts-20180731/"
extension="openssl.so";
extension="memcache.so";
# tar -xf memcached-1.5.19.tar.gz
# yum -y install libevent-devel
# cd /root/lamp/memcached-1.5.19
# ./configure --prefix=/usr/local/memcache
# make
# make install
# useradd -r -s /sbin/nologin memcache
# /usr/local/memcache/bin/memcached -umemcache &
# netstat -an | grep :11211
# tar -xf redis-5.0.6.tar.gz
# cd /root/lamp/redis-5.0.6
# make
#cd src
#make install PREFIX=/usr/local/redis
# cd /root/lamp/redis-5.0.6
# mkdir /usr/local/redis/etc
#mv redis.conf /usr/local/redis/etc
# vi /usr/local/redis/etc/redis.conf
//将daemonize no 改成daemonize yes
#/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
#unzip phpredis-develop.zip
#cd /root/lamp/phpredis-develop
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config
# make
# make install
# vi /usr/local/php/etc/php.ini
extension_dir="/usr/local/php/lib/php/extensions/no-debug-zts-20180731/"
extension="openssl.so";15. 安装 PHP 依赖管理工具 Composer
extension="memcache.so";
extension="redis.so";
//下载composer压缩包
#wget https://getcomposer.org/composer.phar
//移动到全局
#cp composer.phar /usr/local/bin/composer
//更改权限
#chmod u+x /usr/local/bin/composer
# /usr/local/bin/composer \
config -g repo.packagist composer https://packagist.phpcomposer.com
查看Composer全局设置命令
# /usr/local/bin/composer config -gl
进入MySQL数据库: \s 或 status
UNIX socket: /tmp/mysqld.sock
# vi /usr/local/php/etc/php.ini
mysqli.default_socket = /tmp/mysqld.sock
mysql -uroot -p
use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
# unzip phpMyAdmin-5.0.0-alpha1-all-languages.zip
# cp -a /root/lamp/phpMyAdmin-5.0.0-alpha1-all-languages
/usr/local/apache2/htdocs/phpmyadmin
# cd /usr/local/apache2/htdocs/phpmyadmin
# cp -a config.sample.inc.php config.inc.php
# vim config.inc.php (可改,可不改)
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['auth_type'] = 'http';
#设置 auth_type为 http ,即设置为 HTTP身份认证模式(新增即可)
# vi /etc/rc.local17. 项目安装上线:
/usr/local/apache2/bin/apachectl start
/usr/local/mysql/bin/mysqld_safe --user=mysql &
/usr/local/memcache/bin/memcached -umemcache &
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
本文为 @ 21CTO 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。