centos7中Apache,MySQL,php安装和项目
-
centos7默认将mariadb视作mysql。
p.s.因为mysql被oracle收购后,原作者担心mysql闭源,所以又写了一个mariadb,这个数据库可以理解为mysql的分支。卸载mariadb才能安装mysql。
卸载mariadb的方法:
#列出所有被安装的rpm package
rpm -qa | grep mariadb#逐个删除每一个列出来的文件,--nodeps强制删除
rpm -e --nodeps mariadb- libs-************.x86_64
官网下载安装mysql-server
# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm # rpm -ivh mysql-community-release-el7-5.noarch.rpm # yum install mysql-community-server
安装Apache, PHP, MySQL以及php连接mysql库组件。
yum -y install httpd php mysql mysql-server php-mysql
-
安装apache扩展
yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql
-
安装php的扩展
yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc
-
安装MySQL的扩展
yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql
-
配置开机启动服务
#/sbin/chkconfig httpd on [设置apache服务器httpd服务开机启动]
#/sbin/service httpd start [启动httpd服务,与开机启动无关]
#/sbin/service mysqld start [启动mysqld服务,与开机启动无关]
说明:
apache的配置文件是/etc/httpd/conf下modules放在/usr/lib/httpd下php的配置文件在/etc/php.d/下 和/etc/php.iniphp的modules放在/usr/lib/php/modules下
-
绑定域名
在/etc/httpd/conf/httpd.conf配置文件中,提供了范例:
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for requests without a known
# server name.
#
#<VirtualHost *:80>
# ServerAdmin webmaster@dummy-host.example.com
# DocumentRoot /www/docs/dummy-host.example.com
# ServerName dummy-host.example.com
# ErrorLog logs/dummy-host.example.com-error_log
# CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>
所以绑定域名可以跟着提供的范例来配置即可。
说明:
MySQL默认安装的后,root密码为空.
操作命令总结:
1. apache命令
systemctl start httpd.service #启动apache(后面的.service省略也行) 或者是:service httpd start
systemctl stop httpd.service #停止apache 或者是:service httpd stop
systemctl restart httpd.service #重启apache 或者是:service httpd restart
systemctl enable httpd.service #设置apache开机启动 或者是:service httpd enable
当我们在CentOS 7中配置好Apache时,发现apache默认解析目录是在 /var/www/html,也就是说当访问服务器 IP 或者本地 localhost 时,默认定位到这个目录里的 index.html 或 index.PHP 文件。
如果不想用这个默认目录,就要我们动手改了:
一、先创建我们想要的目录,我选择在 /home 下建一个 www目录
cd /home/ --进入home文件夹下 mkdir www --创建www文件夹
二、修改apache配置文件,使定位到/home/www/
vim /etc/httpd/conf/httpd.conf -- 用编辑器打开配置文件(没安装vim的同学可以用vi)
找到 DocumentRoot “/var/www/html” 这表示 #apache的根目录,将该目录改成 /home/www 即可。再找到 #定义apache /var/www/html这个区域,把 /var/www/html改成/home/www,这样我们就把apahce的默认路径改掉了。
然后:
systemctl restart httpd.service --重启apache服务器。
完成以上步骤后,访问主机IP,访问成功。
如果显示,you don’t have permission…..什么的,则是权限问题,因为有些版本的centos在创建文件夹的时候默认权限是750,apache作为一个外来的用户,是没有权限访问的,我们需要为其赋予权限:
chmod -R 755 /home/www
至此,你已经成功的将apache默认目录移至/home/www/下了。
特别的,如果你的项目用的是thinkphp框架,由于apache还要往Runtime文件夹里面添加缓存和日志等内容,单单是 755 权限是不够的。因此要对Runtime这个目录赋予全部权限:
chmod -R 777 /home/www/Runtime
将你的项目移到该目录下即可。