您的位置:首页 > 运维架构 > Linux

centos7下的lamp开发环境搭建

2016-12-07 10:11 477 查看
注:本文lamp开发环境搭建于在
virtualbox
+
vagrant
+
centos-7.0-x86_64.box
虚拟机内的。

本文仅是自己配置环境的记录,也是我在segmentfault的处女作,如若有错误,欢迎指出交流。

已将本文配置完成的环境打包成box上传到百度云,有需要可自行download。

百度云链接: http://pan.baidu.com/s/1slWsHQl 密码: 83qf

相关版本

virtualbox : Version 5.0.14_Ubuntu

vagrant : Vagrant 1.8.1

vagrant+centos-7.0-x86_64.box

注:关于virtualbox+vagrant的搭建就此处略过,直接进入centos下lamp开发环境的搭建

升级系统

yum update

安装apache

安装apache服务 yum -y install httpd

apache相关配置

配置文件
httpd.conf
默认路径是
/etc/httpd/conf/httpd.conf


将http服务添加到centos服务列表中

通过
find / -name apachectl
找到
apachectl
文件路径,如我的在
/usr/sbin/apachectl


将apachectl文件拷贝到
/etc/rc.d/init.d
中,然后在
/etc/rc.d/rc5.d/
下加入链接即可

//如果有其他的版本的Apache存在,也可以直接覆盖掉

cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd

//建立链接(85的意义后面介绍)

ln -s /etc/init.d/httpd /etc/rc.d/rc5.d/S85httpd

通过命令
vim /etc/rc.d/init.d/httpd
修改
/etc/rc.d/init.d/httpd
,并加入以下注释

# chkconfig: 345 85 15

# description: Activates/Deactivates Apache Web Server

添加服务

chkconfig --add httpd


检查是否成功

chkconfig --list httpd


安装mysql

安装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

安装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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  web server apache mysql lamp