在CentOS上设置LAMP(Linux, Apache, MySQL, PHP)环境的权限,通常涉及以下几个关键步骤:
# 临时关闭
systemctl stop firewalld
# 永久关闭
systemctl disable firewalld
# 编辑防火墙配置文件
vi /etc/sysconfig/iptables
# 添加规则
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
# 保存退出
:wq!
# 重启防火墙使配置生效
systemctl restart iptables.service
# 设置防火墙开机启动
systemctl enable iptables.service
setenforce 0
# 编辑配置文件
vi /etc/selinux/config
# 将 SELINUX=enforcing 修改为 SELINUX=disabled
# 保存退出
:wq!
# 重启系统
reboot
# 安装Apache服务及扩展包
yum -y install httpd httpd-manual mod_ssl mod_perl
# 启动Apache服务
systemctl start httpd
# 设置开机启动
systemctl enable httpd
# 安装MySQL
yum -y install mariadb-server mariadb
# 启动MySQL服务
systemctl start mysqld
# 设置开机启动
systemctl enable mysqld
# 运行安全安装脚本
mysql_secure_installation
# 安装PHP及其扩展
yum install php php-mysql php-gd
# 重启Apache服务以应用PHP配置
systemctl restart httpd
# 设置/var/www/html目录权限,允许Apache用户访问
sudo chown -R apache:apache /var/www/html
sudo chmod -R 755 /var/www/html
# 创建example.com的虚拟主机配置文件
sudo nano /etc/httpd/conf.d/example.com.conf
# 添加以下内容
VirtualHost *:80
ServerAdmin webmaster@example.com
DocumentRoot /var/www/example.com/public_html
ServerName example.com
ServerAlias www.example.com
ErrorLog /var/log/httpd/example.com-error.log
CustomLog /var/log/httpd/example.com-access.log combined
# 重启Apache服务
systemctl restart httpd
# 登录MySQL
mysql -u root -p
# 创建新用户
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
# 授予权限
GRANT SELECT, INSERT, UPDATE ON mydatabase.* TO 'newuser'@'localhost';
# 刷新权限
FLUSH PRIVILEGES;
# 查看用户权限
SHOW GRANTS FOR 'newuser'@'localhost';
请注意,上述步骤可能需要根据您的具体需求进行调整。在执行任何权限设置之前,请确保您有足够的权限,并且了解每个命令的作用,以避免对系统造成不必要的影响。