首页 > 代码库 > CentOS7 yum搭建lamp
CentOS7 yum搭建lamp
简易搭建lamp
环境说明:
server:CentOS7-192.168.230.202
client: win8.1-192.168.230.59
Apache/2.4.6
php Version 5.4.16
5.5.52-MariaDB
yum group install Development Tools
#安装开发工具,GCC...
yum install httpd mariadb mariadb-server php php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt -y
#安装apache mariadb php以及各种运行库和工具
service httpd start 启动
在本地 curl是可以的,
在其他客户端是与80无法通信
原因好简单嘛
selinux 和firewalld
setenforce 0
#关闭selinux
systemctl stop firewalld
#关闭防火墙嘛
在客户端本地hosts添加
192.168.230.202 www.rex.com
vi /etc/httpd/conf/httpd.conf #编辑
找到 #ServerName www.example.com:80
修改为 ServerName www.rex.com:80
找到
#<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
添加index.php
现在可以在工作目录添加网页
路径为/var/www/html
[root@localhost ~]# vim /var/www/html/index.php [root@localhost ~]# cat /var/www/html/index.php <?php phpinfo(); ?>
systemctl restart httpd
#reload会报错Empty reply from server,
刷新后就会显示php 的版本及详细内容。
mysql
网上许多教程都是使用mysql
由于版本的问题,还是使用有开源协议的mariadb,使用方法与mysql一样
上面的yum已经一次性安装了
cp /usr/share/mysql/my-huge.cnf /etc/my.cnf #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)
两个文件还是有区别的
service mariadb start ##让我启动服务哈 Redirecting to /bin/systemctl start mariadb.service [root@localhost ~]# mysqladmin -u root password ##修改mysql的root密码,当然可以用 New password: rexhaha Confirm new password: rexhaha
在一遍帖子上看到的MySQL的简单配置,我们用到主要有加密,以及授权
mysqladmin -u root password grant all privileges on *.* to ‘root‘@‘192.168.230.%‘; #%指的是shell的*字符,代表所有
用root账号进入MySQL管理后台,它会提示你输入密码: [root@localhost ~]# mysql -u root –p 创建本地用户: mysql> create user ‘用户名‘@‘localhost‘ identified by ‘密码‘; 创建新数据库: mysql> create database 数据库名; 将指定数据库的所有权限授给指定用户: mysql> grant all privileges on 数据库名.* to ‘用户名‘@‘localhost‘; 刷新系统权限表: mysql> flush privileges; 进入mysql数据库(系统自带),并查询是否存在指定用户(如果有出现一堆东西,则表明存在): mysql> use mysql; mysql> select * from user where user = ‘用户名‘; 如果要删除本地用户,使用: mysql> drop user ‘用户名‘@‘localhost‘; 如果要删除数据库,使用: mysql> drop database 数据库名; 查看存在的数据库: mysql> show databases; 退出MySQL管理后台: mysql> exit
[root@localhost ~]# mysql -uroot -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 9 Server version: 5.5.52-MariaDB MariaDB Server Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement. MariaDB [(none)]> create user ‘rex‘@‘localhost‘ identified by ‘rexhaha‘ -> ; ##上面那句结尾忘记加;号了,所以到一下行才加上 Query OK, 0 rows affected (0.02 sec) ##执行成功的反馈 MariaDB [(none)]> create database rexhome; ##创建rexhome数据库 Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> grant all privileges on *.* to ‘rex‘ @ ‘localhost‘; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ‘‘localhost‘‘ at line 1 ##报错提示 MariaDB [(none)]> grant all privileges on rexhome.* to ‘rex‘ @ ‘localhost‘ ; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ‘‘localhost‘‘ at line 1 ##加数据库名测试了一下还是报错 MariaDB [(none)]> grant all privileges on rexhome.* to ‘rex‘@‘localhost‘ ; ##原来是在‘user’@‘host’地方加了空格 Query OK, 0 rows affected (0.02 sec) MariaDB [(none)]> grant all privileges on *.* to ‘rex‘@‘localhost‘ ; ##授权给rex账号,所有数据及所有表的权限 Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> flush privileges; 更新权限表 Query OK, 0 rows affected (0.00 sec)
测试数据库是否已连接
vim /var/www/html/index.php
<?php $link=mysql_connect("localhost","rex","rexhaha"); if(!$link) echo "FAILD!连接错误,用户名密码不对"; else echo "OK!可以连接"; ?>
测试完后,因为这个页面里面的信息还挺重要的,所以应该把phpinfo.php这个档案删除。
CentOS7 yum搭建lamp