虚拟机CentOS7的安装这里不做赘述,可以参考相关google内容。
安装第一步就是要使linux能够连接外网:
ping www.baidu.com发现未知名称或服务,这时候我们需要设置linux的网络配置。
- 首先查看本机ip信息
- 切换到目录 cd /etc/sysconfig/network-scripts
编辑ifcfg-enp03: sodu vim ifcfg-enp0s3
- 设置好之后,重启网卡: sudo service network restart
大功告成!! 现在可以ping通外网了。。
安装nginx
sudo yum install nginx
可能会报错没有软件包,因为nginx不是centos官方yum源里,是位于第三方yum包
需要安装epel
直接贴出下载的地址http://dl.fedoraproject.org/pub/在这里面找;
centos7 64位;在目录中http://dl.fedoraproject.org/pub/epel/7/x86_64/e/
下载正确版本epel的地址为:http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm
建立nginx的yum仓库: rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm
下载并安装nginx: yum install nginx
启动nginx服务:systemctl start nginx
虚拟机上面访问localhost可见:
设置开机启动nginx
sudo systemctl enable nginx.service
设置宿主机(本机)访问虚拟机nginx
具体情况如下
- 本机能ping通虚拟机
- 虚拟机也能ping通本机
- 虚拟机能访问自己的web
这是因为防火墙的阻挡,需要配置防火墙.
- 安装iptables防火墙
sudo yum install telnet
sudo yum install iptables-services - 编辑防火墙配置文件iptables
sudo vim /etc/sysconfig/iptables
重启iptables
sudo systemctl restart iptables
这下本机可以访问虚拟机web了
安装mysql
我们这里安装mysql分支MariaDB
sudo yum install mariadb-server
sudo systemctl start mariadb
安装完成后已经可以连接mariadb了,初始root密码默认为空
先配置一下mysql_secure_installation,这是mysql的安全配置向导。
a)为root用户设置密码
b)删除匿名账号
c)取消root用户远程登录
d)删除test库和对test库的访问权限
e)刷新授权表使修改生效
sudo /usr/bin/mysql_secure_installation
设置开机启动
sudo systemctl enable maridb.service
安装php7
由于yum安装会包含Apache,所以用源码编译安装。
下载:
sudo wget http://cn2.php.net/get/php-7.1.2.tar.gz/from/this/mirror
解压:
mv mirror php7
tar -xvf php7
安装必要的依赖:
yum install -y \
gcc-c++ autoconf \
libjpeg libjpeg-devel libpng \
libpng-devel freetype freetype-devel \
libpng libpng-devel libxml2 libxml2-devel \
zlib zlib-devel glibc glibc-devel \
glib2 glib2-devel bzip2 bzip2-devel \
ncurses curl openssl-devel \
gdbm-devel db4-devel libXpm-devel \
libX11-devel gd-devel gmp-devel \
readline-devel libxslt-devel \
expat-devel xmlrpc-c xmlrpc-c-devel \
libicu-devel libmcrypt-devel \
libmemcached-devel
编译安装:
./configure --prefix=/usr/local/php7 \
--with-mysql-sock --with-mysqli \
--enable-fpm --enable-soap \
--with-libxml-dir --with-openssl \
--with-mcrypt --with-mhash \
--with-pcre-regex --with-zlib \
--enable-bcmath --with-iconv \
--with-bz2 --enable-calendar \
--with-curl --with-cdb --enable-dom \
--enable-exif --enable-fileinfo \
--enable-filter --with-pcre-dir \
--enable-ftp --with-gd \
--with-openssl-dir --with-jpeg-dir \
--with-png-dir --with-zlib-dir \
--with-freetype-dir \
--enable-gd-native-ttf \
--enable-gd-jis-conv --with-gettext \
--with-gmp --with-mhash \
--enable-json --enable-mbstring \
--enable-mbregex \
--enable-mbregex-backtrack \
--with-libmbfl --with-onig \
--enable-pdo --with-pdo-mysql \
--with-zlib-dir --with-readline \
--enable-session --enable-shmop \
--enable-simplexml --enable-sockets \
--enable-sysvmsg --enable-sysvsem \
--enable-sysvshm --enable-wddx \
--with-libxml-dir --with-xsl \
--enable-zip \
--enable-mysqlnd-compression-support \
--with-pear --enable-intl
sudo make && sudo make install
一段时间执行完成之后
配置php
将php加入到环境变量,做个软链
sudo ln /usr/local/php7/bin/php /usr/local/bin/php
这样直接运行
php -v
就可以看到php信息了 和之前的/usr/local/php7/bin/php一样
创建配置文件(在php源码下查找源文件):
sudo cp php.ini-development /usr/local/php7/lib/php.ini
cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf
cp /usr/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
参考文档 .
启动php-fpm之前确保 php-fpm 模块使用 www-data 用户和 www-data 用户组的身份运行
在/usr/local/php7/etc/php-fpm.d的www.conf中找到以下内容并修改:
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
; will be used.
user = www-data
group = www-data
启动php-fpm
sudo systemctl start php-fpm
配置nginx和php的映射
sudo vim /etc/nginx/nginx.conf
根据root 路径/usr/share/nginx/html文件夹下添加文件index.php
<?php
phpinfo();
浏览器访问ip