注:本文lamp开发环境搭建于在virtualbox
+vagrant
+centos-7.0-x86_64.box
虚拟机内的。
本文仅是本身配置环境的记录,也是我在segmentfault的处女做,如如有错误,欢迎指出交流。
已将本文配置完成的环境打包成box上传到百度云,有须要可自行download。
百度云连接: http://pan.baidu.com/s/1slWsHQl 密码: 83qfphp
相关版本
virtualbox : Version 5.0.14_Ubuntu
vagrant : Vagrant 1.8.1
vagrant+centos-7.0-x86_64.boxhtml
注:关于virtualbox+vagrant的搭建就此处略过,直接进入centos下lamp开发环境的搭建mysql
yum update
安装apache服务
yum -y install httpdsql
apache相关配置
配置文件httpd.conf
默认路径是/etc/httpd/conf/httpd.conf
apache
将http服务添加到centos服务列表中vim
经过find / -name apachectl
找到apachectl
文件路径,如个人在/usr/sbin/apachectl
segmentfault
将apachectl文件拷贝到/etc/rc.d/init.d
中,而后在/etc/rc.d/rc5.d/
下加入连接便可centos
//若是有其余的版本的Apache存在,也能够直接覆盖掉
cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
//创建连接(85的意义后面介绍)
ln -s /etc/init.d/httpd /etc/rc.d/rc5.d/S85httpdsocket
经过命令vim /etc/rc.d/init.d/httpd
修改/etc/rc.d/init.d/httpd
,并加入如下注释
# chkconfig: 345 85 15tcp
# description: Activates/Deactivates Apache Web Server
添加服务
chkconfig --add httpd
检查是否成功
chkconfig --list httpd
安装mysql-server
centos7版本直接yum install mysql-server
是会报找不到包的错误。故要经过如下多步完成。
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm rpm -ivh mysql-community-release-el7-5.noarch.rpm
安装mysql及其余其余相关
yum -y install mysql mysql-devel mysql-server mysql-libs
经过systemctl start mysql.service
打开服务,用mysql -u root -p
进行登录,提示登录密码,则直接回车(密码为空),经过mysql> set password = password('password');
修改密码
修改用户远程访问权限(根据本身须要,可不用)
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION; mysql> FLUSH PRIVILEGES;
可能的报错
ERROR 2002 (HY000): Can't connect to local MySQL server through socket'/var/lib/mysql/mysql.sock' (2) #解决办法:去到对应目录删除因此文件,如个人是rm -rf /var/lib/mysql/ ;重启mysql服务。 ERROR 2013-Lost connection to MySQL server at ‘reading initialcommunication packet’,system error:0 #先vim /etc/mysql/my.cnf,在bind-address = 127.0.0.1,前加上#号,重启服务
安装php
yum -y install php
安装扩展(根据本身须要)
yum -y install php-mysql php-gd php-imap php-ldap php-odbc php-mbstring php-devel php-soap php-cli php-pdo php-mcrypt php-tidy php-xml php-xmlrpc php-pear php-pecl-memcache php-eaccelerator
重启httpd服务,并测试php扩展
经过命令service httpd restart
重启,到html目录下,经过vim phpinfo.php
编辑一个php文件。输入一下内容:
<?php echo phpinfo();
访问http://127.0.0.1/phpinfo.php
查看是否显示正常。
禁用/中止自带的firewalld
服务
中止firewalld服务systemctl stop firewalld
,禁用firewalld服务systemctl mask firewalld
安装iptable iptable-service
#先检查是否安装了iptables service iptables status #安装iptables yum install -y iptables #升级iptables yum update iptables #安装iptables-services yum install iptables-services
设置现有规则
#查看iptables现有规则 iptables -L -n #先容许全部,否则有可能会杯具 iptables -P INPUT ACCEPT #清空全部默认规则 iptables -F #清空全部自定义规则 iptables -X #全部计数器归0 iptables -Z #容许来自于lo接口的数据包(本地访问) iptables -A INPUT -i lo -j ACCEPT #开放22端口 iptables -A INPUT -p tcp --dport 22 -j ACCEPT #开放21端口(FTP) iptables -A INPUT -p tcp --dport 21 -j ACCEPT #开放80端口(HTTP) iptables -A INPUT -p tcp --dport 80 -j ACCEPT #开放443端口(HTTPS) iptables -A INPUT -p tcp --dport 443 -j ACCEPT #容许ping iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT #容许接受本机请求以后的返回数据 RELATED,是为FTP设置的 iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #其余入站一概丢弃 iptables -P INPUT DROP #全部出站一概绿灯 iptables -P OUTPUT ACCEPT #全部转发一概丢弃 iptables -P FORWARD DROP #保存上述规则 service iptables save
开启iptables服务
#注册iptables服务 #至关于之前的chkconfig iptables on systemctl enable iptables.service #开启服务 systemctl start iptables.service #查看状态 systemctl status iptables.service