写在前面
在CentOS 7上安装LAMP用的是Teddysun的LAMP一键安装包: https://lamp.sh/support.html, 非常感谢作者一直以来的维护。等我有钱了,请你喝星巴克。
这里主要是为了记录一下在CentOS 7下安装这个脚本经常会遇到的问题。
安装LAMP
用putty以root身份登录新安装好的CentOS 7系统:
1. 创建文件夹,放置安装文件:
mkdir /path/to/download/lamp/
cd /path/to/download/lamp/
2. 下载:
yum -y install wget screen unzip
screen -S lamp
wget -O lamp.zip https://github.com/teddysun/lamp/archive/master.zip
unzip lamp.zip
cd lamp-master/
chmod +x *.sh
** 可以开始安装了 **
3. 安装LAMP(和Xcache)
./lamp.sh 2>&1 | tee lamp.log
./xcache.sh
大多数情况都选择默认安装,确认之后安装的时候比较费时
各种配置
1. 解决CentOS 7 下安装完成后打不开网站,无法访问的问题
以下摘自Teddysun的LAMP一键安装包: 常见问题
安装 LAMP 完成后,无法用 IP 访问网站。查看进程也发现了 httpd 和 mysqld 也启动了,ping 也没问题,但就是无法访问。
经过一番排查,这是 CentOS 7 最新的 firewalld 防火墙引起的问题。
这时就要用经典的 iptables-services 来替代 firewalld 了。
命令如下:
yum -y install iptables-services
systemctl mask firewalld
systemctl enable iptables
systemctl stop firewalld
systemctl start iptables
然后再修改 iptables 的防火墙规则。修改文件 /etc/sysconfig/iptables,将 80 和 443 端口放行。
完整内容如下:
# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
2. 命令行下建立MySQL数据库,创建用户和赋予权限
使用上面的脚本安装LAMP后,默认MySQL的root密码是root,所以要先更改默认的root密码:
mysql -u root -proot
mysql> SET PASSWORD FOR 'root'@'localhost'=PASSWORD('新密码');
然后就是添加一个新的数据库,添加用户和设置权限:
mysql> CREATE DATABASE 数据库名;
mysql> CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码';
mysql> GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'localhost';
mysql> FLUSH PRIVILEGES;
安装Wordpress
由于没有安装ftp,所以wordpress要从官网下载,然后用WinSCP或者其他的SFTP工具上传到服务器。
然后修改wp-config.php文件,使用网页安装。
上传wordpress的文件后,需要更改站点目录的权限:
chown -R apache:apache /data/www/域名
ps: 最近发现了一些挺好用又免费的一键安装服务:Softaculous 和 Installatron。 免费注册帐号后就可以直接使用(需要输入数据库和ftp的地址,帐号和密码)
很多提供Cpanel的主机都会提供这两者中的一种,可以一键安装wordpress和其他各种app,我用的ownCloud就是用这种方式安装的,无需root权限。所以很适合共享主机上使用。
不过如果在vps上用Softaculous或Installatron的话,需要安装ftp和提供ftp的帐号密码,所以需要注意不能设置太大的权限。这个以后需要的时候再补上吧。
End.