简易搭建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这个档案删除。