1、安装编绎安装需要的依赖
yum install gcc gcc-c++ autoconf automake ncurses-devel openssl-devel
2、安装Mysql
1) rz 上传 sz PATH
yum install lrzsz -y
2)安装cmake
cd /usr/local/src wget http://www.cmake.org/files/v3.0/cmake-3.0.2.tar.gz tar zxvf cmake-3.0.2.tar.gz cd cmake-3.0.2 ./configure make make install
3)添加mysql组
groupadd mysql ##创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统 useradd -g mysql mysql -s /bin/false
4)安装Mysql
#创建MySQL数据库存放目录 mkdir -p /data/mysql #设置MySQL数据库存放目录权限 chown -R mysql:mysql /data/mysql #创建MySQL安装目录 mkdir -p /usr/local/mysql cd /usr/local/src #下载mysql wget http://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.21.tar.gz #解压 tar zxvf mysql-5.6.21.tar.gz #进入目录 cd mysql-5.6.21 #配置 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc #编译 make make install
4)配置
#删除系统默认的配置文件(如果默认没有就不用删除) rm -rf /etc/my.cnf #进入MySQL安装目录 cd /usr/local/mysql #生成mysql系统数据库 ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql #添加到/etc目录的软连接 ln -s /usr/local/mysql/my.cnf /etc/my.cnf #把Mysql加入系统启动 cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld #增加执行权限 chmod 755 /etc/init.d/mysqld #加入开机启动 chkconfig mysqld on #编辑 vi /etc/rc.d/init.d/mysqld #键入“i”进入编辑模式,修改以下两个路径 basedir=/usr/local/mysql #MySQL程序安装路径 datadir=/data/mysql #MySQl数据库存放目录 #修改好按Esc退出编辑模式,输入以下字符回车保存退出 :wq #启动 service mysqld start
3、安装nginx
1)仓库
#为了可以使用 CentOS 系统的包管理工具去安装更多的东西,我们需要单独安装一些额外的软件仓库。 #EPEL sudo yum install epel-release -y #IUS,IUS 仓库里面有我们需要的一些新的软件包,比如 PHP 7。注意我们安装的是为 CentOS 7 这个系统准备的 IUS 仓库,如果你的系统是 CentOS 6,你需要到 IUS 网站上去查找适合的仓库的下载地址 sudo yum install https://centos7.iuscommunity.org/ius-release.rpm -y
2)安装nginx
#NGINX 这个软件包已经包装在 EPEL 仓库里了,之前我们已经安装了这个仓库,所以可以直接使用包管理工具去安装 NGINX。 sudo yum install nginx -y #启动 sudo systemctl start nginx #开启自启动 sudo systemctl enable nginx
服务启动以后,你就可以在浏览器上使用服务器的 IP 地址,或者指向这个地址的域名访问服务器指定的目录了。你会看到一下界面。
3)配置 nginx 虚拟主机
安装完 nginx 以后,第一件想到的事应该就是去创建虚拟主机,虚拟主机允许我们在同一台服务器上运行多个网站,我们可以为不同的域名绑定不同的目录,访问这个域名的时候,会打开对应目录里面的东西。之前介绍过为 Apache 服务器创建虚拟主机,下面来看一下为 nginx 配置虚拟主机。先进入到 nginx 配置文件目录:
cd /etc/nginx/conf.d
创建一个新的配置文件,比如我要为 tytrock.com 这个主机名创建一个虚拟主机,可以这样:
vim tytrock.conf
编辑配置文件,把下面的配置代码放到这个配置文件里(root为站点根目录路径,按实际填写):
server { listen 80; server_name tytrock.com; root /usr/site/tytrock; index index.php index.html; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
上面这个配置文件支持一些的 PHP 应用,比如 WordPress,Drupal,Laravel。第一个 location 区块可以让 PHP 应用支持地址的重写功能,第二个 Location 设置了让虚拟主机可以去处理 PHP 的请求。注意这里用了 include 命令,包含进来一个 fastcgi.conf 文件,你要确定这个文件存在。
你也可能会找到 fastcgi_params 这个文件,如果没有 fastcgi.conf 就把 fastcgi_params 这个文件包含进来,并且在处理 php 的那个 location 区块里再添加一条配置:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
erver_name 就是主机名,也就是跟这个虚拟主机绑定在一块儿的域名,我事先把 nginx.ninghao.net 指向了服务器,这个虚拟主机就是为它准备的,所以,server_name 后面的东西就是 nginx.ninghao.net 。紧接着 server_name 下面可以是一个 root,就是这个虚拟主机的根目录,也就是网站所在的目录。比如我们要把 nginx.ninghao.net 这个网站的文件放在 /home/www/nginx.ninghao.net 下面,那么这个 root 就是这个路径。
然后去掉 location / 里面的 root 这行代码。再在 index 后面加上一种索引文件名,也就是默认打开的文件,这里要加上一个 index.php ,这样访问 nginx.ninghao.net 就可以直接打开 root 目录下面的 index.php 了。稍后我们再去安装 php 。
保存一下,按 esc ,输入 :wp(保存并退出)。现在虚拟主机应该就可以使用了。主机的域名是 nginx.ninghao.net,访问它的时候,打开的是 /home/www/nginx.ninghao.net 这个目录里面的东西,你可以在这个目录下放点东西。
重启 nginx 或者重新加载 nginx 可以让配置文件生效。
systemctl reload nginx
4、安装PHP
php5.6版本
#安装 sudo yum install php56u-fpm -y #启动 sudo systemctl start php-fpm #开机自动启动 sudo systemctl enable php-fpm #安装 PHP 扩展:为了可以正常运行一般的 PHP 应用,你需要再安装一些其它的 PHP 扩展,通常你在安装 PHP 应用,比如 WordPress,Drupal,Laravel 的时候,都会提示你缺少的 PHP 扩展。下面是一些常用的 PHP 扩展: sudo yum install php56u-gd php56u-mysqlnd php56u-pdo php56u-mcrypt php56u-mbstring php56u-json php56u-opcache php56u-xml -y #重新加载 PHP-FPM sudo systemctl reload php-fpm
有些情况安装后输入php会出现 command not found的情况,可能是因为没有安装php-cli模式,参考文章:https://www.ytyzx.org/index.php?title=%E5%9C%A8CentOS7%E4%B8%8B%E5%AE%89%E8%A3%85PHP7&variant=zh
yum install php56u-cli
php7.0版本
#rpm 安装 php7 相应的 yum源 rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm #yum安装php7 yum install php70w php70w-fpm php70w-mysql php70w-mbstring php70w-mcrypt php70w-gd php70w-imap php70w-ldap php70w-odbc php70w-pear php70w-xml php70w-xmlrpc php70w-pdo #启动php-fpm服务 sudo systemctl start php-fpm #设置开机启动 sudo systemctl enable php-fpm #参考 https://blog.csdn.net/weixin_37939964/article/details/78966326
php5.4版本
(php5.4 lampp集成环境:https://excellmedia.dl.sourceforge.net/project/xampp/XAMPP%20Linux/1.8.2/xampp-linux-x64-1.8.2-3-installer.run)
#添加源 rpm -Uvh #安装 yum -y install php #安装 PHP 扩展 yum --enablerepo=remi,remi-test install php-mysql php-pgsql php-pecl-mongo php-sqlite \ php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml php-pecl-apc php-cli \ php-pear php-pdo #后台运行php-cgi进程(执行后如需退出终端,需使用exit退出,否则该后台运行的进程可能运行了6、7个小时之后断掉,参考:https://blog.csdn.net/beijicy/article/details/47317567) nohup php-cgi -b 9000 -q >/dev/null 2>&1 & #如修改了php.ini文件需要重启php,需要先查看php-cgi的进程id #查看php-cgi的进程 ps -ef|grep php-cgi #利用进程号杀掉进程,再重新运行php-cgi进程 kill -9 进程号 #安装mysql扩展 yum --enablerepo=remi,remi-test install mysql-connector-odbc mysql-devel libdbi-dbd-mysql #配置nginx文件 #进入/etc/nginx/nginx.conf #开启php支持,只需要安装php后,打开nginx配置文件中加入以下部分,重启nginx location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; #fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # 原始的nginx配置是上面注释的部分,应该改成下面部分 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }