1. 用yum安装Apache,Mysql,PHP.
1.1安装Apache
yum install httpd httpd-devel
安装完成后,用/etc/init.d/httpd start 启动apache
设为开机启动:chkconfig httpd on
安装之后重启:service httpd start
要是出现报错:
Could not reliably determine the server's fully qualified domain name
打开 httpd.conf 将里面的 #ServerName localhost:80 注释去掉,没有的话加上去。
再执行 service httpd start 然后可以通过浏览器访问 http://localhost:80 ,如果页面显示 “It works!” ,即表示apache已安装并启动成功。
补充问题
当配置多个域名之后如果提示如下错误:
_default_ VirtualHost overlap on port 80, the first has precedence
大概意思就是说后面新增加的这个VirtualHost 由于端口被占用,不能生效,沿用第一个虚拟主机的配置。
检查了一下,发现原来在httpd.conf里,我没有把#NameVirtualHost *:80前的注释去掉,导致这个没有生效。
解决方案:
去掉#NameVirtualHost *:80前面的#号,没有的话加上,然后重启apache即可。
网站根目录 /var/www/html/
Apache主目录 /etc/httpd/
Apache主配置文件 /etc/httpd/conf/httpd.conf
Apache日志 /etc/httpd/logs/
1.2 安装mysql
1.2.1 yum install mysql mysql-server mysql-devel
同样,完成后,用/etc/init.d/mysqld start 启动mysql
1.2.2 设置mysql密码
mysql>; USE mysql;
mysql>; UPDATE user SET Password=PASSWORD('newpassword') WHERE user='root';
mysql>; FLUSH PRIVILEGES;
1.2.3 允许远程登录
mysql -u root -p
Enter Password: <your new password>
mysql>GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
完成后就能用mysql-front远程管理mysql了。
数据库目录
/var/lib/mysql/
配置文件
/usr/share/mysql(mysql.server命令及配置文件)
相关命令
/usr/bin(mysqladmin mysqldump等命令)
启动脚本
/etc/rc.d/init.d/(启动脚本文件mysql的目录)
1.2.4 设为开机启动
chkconfig mysqld on
2. 安装php
yum install php php-mysql php-common php-gd php-mbstring php-mcrypt php-devel php-xml
/etc/init.d/httpd start
PHP主目录 /etc/php.d/
PHP配置文件 /etc/php.ini
PHP模块位置 /usr/lib/php/ 或者 /usr/lib64/php/
3. 测试一下
3.1在/var/www/html/新建个test.php文件,将以下内容写入,然后保存。
<?
phpinfo();
?>
3.2 防火墙配置
a.添加.允许访问端口{21: ftp, 80: http}.
iptables -I RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT
iptables -I RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
b.关闭防火墙{不推荐}.
service iptables stop
c.重置加载防火墙
service iptables restart
3.3然后在客户端浏览器里打开http://serverip/test.php,若能成功显示,则表示安装成功。
至此,安装完毕。感慨,yum真是太好用了。
CentOS 打开防火墙80端口
注意:有时安装好可能无法访问,需要打开80端口
很大的原因是防火墙:
通过/etc/init.d/iptables status命令查询是否有打开80端口,如果没有可通过两种方式处理:
1.修改vi /etc/sysconfig/iptables命令添加使防火墙开放80端口
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
2.关闭防火墙
/etc/init.d/iptables stop
#start 开启
#restart 重启
永久性关闭防火墙chkconfig --level 35 iptables off
打开防火墙的另一种方法
#/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
#/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT
#/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
然后保存:
#/etc/rc.d/init.d/iptables save
查看打开的端口:
# /etc/init.d/iptables status