IT关联

CentOS7搭建MySQL5+PHP7+Apache2.4环境

一、安装Apache服务器
1、检查系统是否安装了Apache,敲rpm -qa -httpd
2、敲yum search httpd搜索Apache
3、敲yum install httpd -y安装,等待一段时间后提示安装成功
4、敲rpm -qa httpd查看软件是否安装成功
5、查看软件安装位置,rpm -ql httpd
6、启动systemctl start httpd
7、将Apache服务添加到 开机自启中chkconfig httpd on 
8、打开浏览器,输入IP地址,显示测试页则说明安装成功(Apache默认80端 口)

Apcahe的一些配置文件

目录 路径
服务目录 /etc/httpd
主配置文件 /etc/httpd/conf/httpd.conf
网站数据目录 /var/www/html
访问日志 /var/log/httpd/access_log
网站数据目录 /var/log/httpd/error_log

通过查看 /etc/httpd/conf/httpd.conf 可以得知DocumentRoot正是用于定义网站数据保存路径的参数,手动写一个文件替换掉httpd服务程序的默认网页,这种操作是立即生效的。
echo “hello everyone my name is feixiangkeji” > /var/www/html/index.html

Apache常用命令
启动 systemctl start httpd
停止 systemctl stop httpd
重启 systemctl restart httpd

9、关闭SELINUX

vi /etc/selinux/config

注释掉如下两句,添加最后一项

\#SELINUX=enforcing #注释掉

\#SELINUXTYPE=targeted #注释掉

SELINUX=disabled #增加

:wq! 保存退出

输入如下命令

setenforce 0 #使配置立即生效

二、PHP7安装
通过yum安装
1、安装epel-release

yum install epel-release

2、安装PHP7的rpm源
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
3、安装PHP7
yum install php70w
4、安装扩展
yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc如果有问题用下面一条。
yum -y install php* –skip-broken

全部扩展./configure –prefix=/usr/local/php7 –with-curl –with-freetype-dir –with-gd –with-gettext –with-iconv-dir –with-kerberos –with-libdir=lib64 –with-libxml-dir –with-mysqli –with-openssl –with-pcre-regex –with-pdo-mysql –with-pdo-sqlite –with-pear –with-png-dir –with-xmlrpc –with-xsl –with-zlib –enable-fpm –enable-bcmath -enable-inline-optimization –enable-gd-native-ttf –enable-mbregex –enable-mbstring –enable-opcache –enable-pcntl –enable-shmop –enable-soap –enable-sockets –enable-sysvsem –enable-xml –enable-zip –enable-pcntl –with-curl –with-fpm-user=nginx –enable-ftp –enable-session –enable-xml –with-apxs2=/usr/bin/apxs;

测试Apache和PHP
在www目录下创建index.php
添加<?php phpinfo();?>
重启Apache服务
访问IP

5、安装phpmyadmin

使用yum安装phpmyadmin

yum install phpmyadmin php-mcrypt

phpMyAdmin 的默认安装目录是 /usr/share/phpMyAdmin,同时会在 Apache 的配置文件目录中自动创建虚拟主机配置文件 /etc/httpd/conf.d/phpMyAdmin.conf(区分大小写)。默认情况下,CentOS 7上的phpMyAdmin只允许从回环地址(127.0.0.1)访问。为了能远程连接,你需要改动它的配置。

vi /etc/httpd/conf.d/phpMyAdmin.conf

修改配置文件,如下:

<Directory /usr/share/phpMyAdmin/>

   AddDefaultCharset UTF-8

   <IfModule mod_authz_core.c>

     # Apache 2.4

     <RequireAny>

      # Require ip 127.0.0.1  #注释掉

      # Require ip ::1   #注释掉

      Require all granted   #新添加

     </RequireAny>

 </IfModule>

 <IfModule !mod_authz_core.c>

     # Apache 2.2

     Order Deny,Allow

     Deny from All

     Allow from 127.0.0.1

     Allow from ::1

   </IfModule>

</Directory>

<Directory /usr/share/phpMyAdmin/setup/>

   <IfModule mod_authz_core.c>

     # Apache 2.4

     <RequireAny>

      #Require ip 127.0.0.1  #注释掉

      #Require ip ::1   #注释掉

      Require all granted   #新添加

     </RequireAny>

   </IfModule>

   <IfModule !mod_authz_core.c>

     # Apache 2.2

     Order Deny,Allow

     Deny from All

     Allow from 127.0.0.1

     Allow from ::1

   </IfModule>

</Directory>

然后重启Apache服务器

systemctl restart httpd

然后就可以通过浏览器访问http://服务器ip地址/phpmyadmin访问

三、MySQL安装
1.安装MySQL源
yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm

2.安装MySQL
yum install mysql-community-server

3.启动MySQL
systemctl start mysqld

4.获取密码
grep ‘temporary password’ /var/log/mysqld.log
得到这行A temporary password is generated for root@localhost: Jqqskhz1Wr(? 冒号后面的就是密码

5.进入MySQL(注意命令后面要加;)
mysql -uroot -p

6.修改密码
ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘ ********** ‘ ;(密码请用引号包起来 注意MySQL的密码必须复杂 不复杂会报错)

7.开放远程访问权限
use mysql;;
update user set host = ‘%’ where user = ‘root’;;
百分号相当于*号,意为全部放行,也可改为IP地址则只允许此IP连接,也可以设置为192.168.%.%或者192.168.0.1/9代表允许一个ip段进行连接,也可以多加几条数据设置不同ip允许连接。

8.MySQL权限管理。(只写干货,不懂的请自行Google)

create user ‘myqiutian’@’%’ IDENTIFIED BY ‘*********’;;
创建一个用户为myqiutian,因为用的%所以任何IP都可以登录,但登录后却无法看到数据库,新增用户所有权限默认关闭。
flush privileges;刷新权限,立即生效;、

MySQL常用命令
\q 退出;
show databases; 显示数据表;
select host,user from mysql.user; 显示user表信息;

三、安装MariaDB

1、安装MySQL

// yum install mysql mysql-server mysql mysql-deve #询问是否要安装,输入Y即可自动安装,直到安装完成

在CentOS7后,上面的命令可能不能用了,因为CentOS7用MariaDB代替了mysql数据库,MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。

# yum install mariadb-server -y //如果已安装可以省略  

# systemctl start mariadb.service     //启动服务  

# systemctl enable mariadb.service     //开机启动服务  

cp /usr/share/mysql/my-medium.cnf /etc/my.cnf     #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)

2、为root账户设置密码

mysql_secure_installation

回车,根据提示输入Y

输入2次密码,回车

根据提示一路输入Y

最后出现:Thanks for using MySQL!

MySql密码设置完成,重新启动 MySQL:

# systemctl restart mariadb.service  #重启

# systemctl stop mariadb.service  #停止

# systemctl start mariadb.service  #启动

*四、配置Apache
1、进入Apache的配置文件,修改ServerName localhost:80;
2、将AllowOverride None都改成AllowOverride All(一共有三处,为了隐藏入口文件);
3、找到以下内容(隐藏入口文件)
Include conf.modules.d/*.conf
在此行内容下添加
LoadModule rewrite_module modules/mod_rewrite.so
4、重启Apache服务

*五、将本地文件上传至云服务器
1、服务器需要安装scp 通过以下命令安装
yum install openssh-clients
2、进入电脑终端,上传文件
scp (文件名,可带路径) root@139.59.250.52(远程服务器IP):/root/htmltitle (加粗部分为你要存放在远程服务器上的路径)
注:只能上传文件,不能上传文件夹。所以先把文件夹压缩,上传后解压缩。
3、解压文件
安装支持ZIP的工具
yum install -y unzip zip
解压ZIP文件
unzip 文件名.zip

配置篇

一、Apache配置

[2] 配置httpd,将服务器名称替换为您自己的环境

[root@linuxprobe ~]# vi /etc/httpd/conf/httpd.conf

# line 86: 改变管理员的邮箱地址

ServerAdmin root@linuxprobe.org

# line 95: 改变域名信息

ServerName www.linuxprobe.org:80

# line 151: none变成All

AllowOverride All

# line 164: 添加只能使用目录名称访问的文件名

DirectoryIndex index.html index.cgi index.php

#line 316

AddDefaultCharset UTF-8  修改为:AddDefaultCharset GB2312 #添加GB2312为默认编码

#line 144

Options Indexes FollowSymLinks 修改为:Options Includes ExecCGI FollowSymLinks  #允许服务器执行CGI及SSI,一定要删掉Indexes:禁止列出目录

# add follows to the end

# server’s response header(安全性)

ServerTokens Prod    #在出现错误页的时候不显示服务器操作系统的名称

# keepalive is ON

KeepAlive On     #允许程序性联机

:wq! #保存退出

#systemctl restart httpd #重启

rm -f /etc/httpd/conf.d/welcome.conf /var/www/error/noindex.html #删除默认测试页

二、php配置

vi /etc/php.ini #编辑

date.timezone = PRC #在878行 把前面的分号去掉,改为date.timezone = PRC

disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname

#在314行 列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。

expose_php = Off #在375行 禁止显示php版本的信息

short_open_tag = ON #在211行支持php短标签

open_basedir = .:/tmp/ #在308行 设置表示允许访问当前目录(即PHP脚本文件所在之目录)和/tmp/目录,可以防止php木马跨站,如果改了之后安装程序有问题,可以注销此行,或者直 接写上程序的目录/data/www.osyunwei.com/:/tmp/

:wq! #保存退出

# systemctl restart mariadb.service  #重启MySql

# systemctl restart httpd  #重启Apche

测试篇

cd /var/www/html

vi index.php #编辑输入下面内容

<?php

phpinfo();

?>

:wq! #保存退出

在客户端浏览器输入服务器IP地址,可以看到相关的配置信息!

phpMyAdmin常见问题

1. phpmyadmin提示未开启php-mcrypt,这是因为没有安装php-mrcrpt扩展。在官方源没有php-mrcrpt扩展,请安装epel源后再yum install php-mcrypt

2. phpmyadmin无法访问

phpmyadmin默认只能使用http://localhost/phpmyadmin来访问,

可以修改/etc/httpd/conf.d/phpmyadmin.conf中对应部分为

<Directory “/usr/share/phpmyadmin”>

Order Deny,Allow

# Deny from all

Allow from All

</Directory>

不过强烈不支持这么做的,把phpmyadmin暴露了不安全

注意:

apache解析php,修改httpd.conf文件,添加

Addtype application/x-httpd-php .php .phtml

Addtype application/x-httpd-php-source .phps

3.myql可以远程登录

设置mysql密码

mysql>; USE mysql;

mysql>; UPDATE user SET Password=PASSWORD(‘newpassword’) WHERE user=’root’;

mysql>; FLUSH PRIVILEGES;

允许远程登录

mysql -u root -p

Enter Password: <your new password>

mysql>GRANT ALL PRIVILEGES ON *.* TO ‘用户名’@’%’ IDENTIFIED BY ‘密码’ WITH GRANT OPTION;

完成后就能用mysql-front远程管理mysql了。

设为开机启动

#systemctl enable mariadb.service

附录:

Ubuntu 14.04 配置 LAMP+phpMyAdmin PHP(5.5.9)开发环境

http://www.linuxidc.com/Linux/2014-10/107924.htm

Windows 7下硬盘安装Ubuntu 14.10图文教程

http://www.linuxidc.com/Linux/2014-10/108430.htm

U盘安装Ubuntu 14.10

http://www.linuxidc.com/Linux/2014-10/108402.htm

Ubuntu 14.10 正式发布下载

http://www.linuxidc.com/Linux/2014-10/108363.htm

Ubuntu 14.04 LTS 如何升级到 Ubuntu 14.10 

http://www.linuxidc.com/Linux/2014-10/108381.htm

Ubuntu 14.10 下安装 LAMP 服务图文详解 

http://www.linuxidc.com/Linux/2014-12/110082.htm

本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-12/111030.htm

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注