首先说明下,我在搭建的时候,用的是centOS7,虽然都是用命令行配置的,但是因为选择了GUI的centOS所以一些命令和库是系统装好的,纯命令行版本的centOS7,有些命令和库可能需要自己去安装。
1、安装Apache和php
#ifconfig 查看以太网口信息
#ping www.baidu.com 确认网络状况良好
#yum search httpd 从yum源搜索httpd安装包
#yum install httpd 安装Apache
#lsof -i:80 查看80端口的是否开放(有返回数据则是开放的)
#service httpd start <span style="white-space:pre"> </span>http访问启动
#chkconfig httpd on 开机自启
#getenforce 查看selinux状态
#vim /etc/selinux/config 编辑selinux配置,关闭selinux(需重启服务器)
#init 6 重启服务器生效
#yum search php 查看php安装包
#yum install php 安装php
2、安装mysql
//因为centOS7中并没有自带MySQL的安装包,我这里选择安装mysql的repo源来进行yum安装
#wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
#rpm -ivh mysql-community-release-el7-5.noarch.rpm
#yum install mysql-server
//错误:软件包:akonadi-mysql-1.9.2-4.el7.x86_64 (@anaconda) Requires: mariadb-server Removing: 1:mariadb-...
//原因是centOS7因为安装过了mariadb,其中有些包和mysql的冲突了。
//解决方法:
#yum remove mariadb-libs
#yum install mysql-server 安装mysql-server
#mysqladmin -u root password root 设置MySQL的登录密码为"root"
#mysql -h localhost -u root -p
enter password:root
mysql>exit
#chkconfig mysqld on 开机自启动
3、配置Apache的虚拟主机
//配置Apache的虚拟主机
#vim /etc/httpd/conf/httpd.conf
//找到index.html,在index.html后面加上index.php(注意空格隔开)
//在/etc/httpd/conf.d/目录下新建一个conf文件,用该文件来配置虚拟主机
#vim /etc/httpd/conf.d/vhost.conf
//内容如下:
#虚拟主机配置文件
<VirtualHost 192.168.0.250:80>
#绑定的主域
ServerName bookstore.com
#绑定的子域名
ServerAlias www.bookstore.com
#网站主目录
DocumentRoot /var/www/www.bookstore.com/
#日志路径配置(如果没有,请记得创建)
ErrorLog /var/www/web_log/error_bookstore.com.log
CustomLog /var/www/web_log/custom_bookstore.com.log common
#ServerSignature Off
</VirtualHost>
#网站的配置
<Directory "/var/www/www.bookstore.com/">
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
#mkdir /var/www/www.bookstore.com
#mkdir /var/www/web_log
#service httpd restart<span style="white-space:pre"> </span>重启Apache
//如果重启中碰到了报错,比如:caught SIGWINCH, shutt ing down gracefully。
//一般是语法问题,导致Apache无法启动成功,可以使用如下目录查看启动失败原因:
#systemctl status httpd.service -l 或者journalctl -xe
//搞定了上面之后,可以试试php脚本能不能运行:
#vim /var/www/www.bookstore.com/index.php
添加测试代码:
<span style="white-space:pre"> </span><?php
<span style="white-space:pre"> </span>echo "here is bookstore";
<span style="white-space:pre"> </span>?>
//如果你的centOS可以使用浏览器,你可以试一下,已经可以显示出“ere is bookstore”了
需要注意的地方:
注意:
1、记得开启php.ini中的报错提示:
#vim /etc/php.ini
//找到display_error=off,改为on即可
#service httpd restart
2、如果要在虚拟机外面访问刚才的index.php,则需要配置防火墙,这里我直接清空了防火墙规则:
#iptables -F
//然后在虚拟机外面的浏览器,试试访问192.168.0.250/index.php,成功~~