本文目录一览:
- linux yum 安装 的php 怎么加载 mysql 扩展
- 怎么样使用yum来安装mysql
- php怎么安装yum的mysql
- 如何在Fedora 8下使用Yum来安装Apache+PHP+MySQL环境
- 怎么安装PHP环境?
- 如何在CentOS 6上通过YUM安装Nginx和PHP-FPM
linux yum 安装 的php 怎么加载 mysql 扩展
如果不需要进行数据库操作,不需要安装mysql。php的mysql扩展是php用于操作mysql数据库的函数库,如果需要进行数据库操作,不仅要有函数库,还需要安装数据库。
怎么样使用yum来安装mysql
先配置好yum仓库。不建议使用默认的,默认的yum仓库中的php很老,建议网上找新的yum仓库安装php。
yum search php
yum install phpxx
php怎么安装yum的mysql
如果你使用的是redis2.6(sentinel版本为sentinel 1),你最好应该使用redis2.8版本的sentinel 2,因为sentinel 1有很多的Bug,已经被官方弃用,所以强烈建议使用redis2.8以及sentinel 2。
如何在Fedora 8下使用Yum来安装Apache+PHP+MySQL环境
Fedora 8下用Yum安装Apache+PHP+MySQL环境。 Fedora 8 用yum来管理安装Apache+PHP+Mysql的基本安装。
- 安装Apache, PHP, MySQL, 以及php连接mysql库组件:
yum -y install httpd php mysql mysql-server php-mysql
- 配置开机启动服务。
- 设置MySQL数据库root帐号密码。
- 让MySQL数据库更安全。
- 按照以上的安装方式,配置出来的默认站点目录新建一个php脚本。
- 新建一个数据库,添加一个数据库用户,设置用户权限。写个php脚本测试一下数据库连接吧。
两个重要目录:
- Apache有两个重要的目录:1、配置目录;2、文档目录。
两种配置模式:
- Apache在Fedora下的两种配置方式:文本模式(终端命令行)和图形化配置。两者各有优势:图形化下配置更容易上手,文本模式下直接编辑文件更自由、更直接。
Apache服务的启动与关闭
- Apache服务的停止、启动、关闭可以通过两种模式下进行操作:文本(终端)模式下和图形化界面。
怎么安装PHP环境?
LAMP/LNMP 环境搭建
一.检查系统环境
- 确认centos版本:
[root@localhost ~]# cat /etc/redhat-release
- 检查是否安装过Apache:
rpm -qa | grep httpd 或者: apachectl -v 或者: httpd -v
- 检查是否安装过MySQL:
如果未被识别则没有安装。service mysqld start
- 清理MySQL痕迹:
yum remove mysql rm -f /etc/my.cnf
- 卸载Apache包:
注意:如果是新的系统或者你从来没有尝试安装过,则以上步骤省略。rpm -qa|grep httpd
二.安装Apache、PHP、MySQL
停止防火墙服务:
[root@localhost ~]# systemctl stop firewalld.service
禁用防火墙开机启动服务:
[root@localhost ~]# systemctl disable firewalld.service
- 安装Apache:
[root@localhost ~]# yum -y install httpd
- 安装PHP:
[root@localhost ~]# yum -y install php
- 安装php-fpm:
[root@localhost ~]# yum -y install php-fpm
- 安装MySQL:
[root@localhost ~]# yum -y install mysql
- 安装mysql-server:
CentOS 7+ 版本将MySQL数据库软件从默认的程序列表中移除,用mariadb代替了。因为MySQL被Oracle收购后,原作者担心MySQL闭源,所以又写了一个MariaDB,这个数据库可以理解为MySQL的分支。如果需要安装MariaDB,只需通过yum即可。[root@localhost ~]# yum install mariadb-server
- 安装php-mysql:
[root@localhost ~]# yum -y install 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 php-devel
- 安装MySQL扩展包:
yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql
四. 配置Apache、MySQL开机启动
重启Apache、MySQL服务(注意这里和CentOS 6有区别,CentOS 7+不能使用6的方式):
systemctl start httpd.service #启动Apache
systemctl stop httpd.service #停止Apache
systemctl restart httpd.service #重启Apache
systemctl enable httpd.service #设置Apache开机启动
重启数据库:
# 启动MariaDB
[root@localhost ~]# systemctl start mariadb.service
# 停止MariaDB
[root@localhost ~]# systemctl stop mariadb.service
# 重启MariaDB
[root@localhost ~]# systemctl restart mariadb.service
# 设置开机启动
[root@localhost ~]# systemctl enable mariadb.service
五.配置MySQL
初次安装MySQL是没有密码的,我们要设置密码,MySQL的默认账户为root。 方式1:设置 MySQL 数据 root 账户的密码
[root@localhost ~]# mysql_secure_installation
当出现如下提示时候直接按回车:
Enter current password for root
出现如下再次回车:
Set root password? [Y/n]
出现如下提示输入你需要设置的密码,这里输入了root,输入密码是不显示的,回车后再输入一次确认:
New password:
接下来还会有四个确认,分别是:
Remove anonymous users? [Y/n]
Disallow root login remotely? [Y/n]
Remove test database and access to it? [Y/n]
Reload privilege tables now? [Y/n]
直接回车即可。 方式2:进入MySQL
mysql -r
修改MySQL密码:
set password for 'root'@'localhost'=password('root');
MySQL授权远程连接(Navicat等):
grant all on *.* to root identified by 'root';
六.测试环境
我们在浏览器地址栏输入,正常显示,说明我们的LAMP环境搭建成功。
七.安装Nginx
yum install yum-priorities -y
wget
rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum install nginx
Nginx版本号可变更版本。
八.配置Nginx
- Nginx启动,停止,重启:
systemctl start nginx.service #启动Nginx systemctl stop nginx.service #停止 systemctl restart nginx.service #重启 systemctl enable nginx.service #设置开机启动
- 更改Nginx端口号(根据自己需求):
把cd /etc/nginx/conf.d/ vim default.conf
listen 80
改成listen 81
。 - 访问即可看到Nginx首页。
安装完成访问时需要启动php-fpm,不重启访问会出现下载文件,重启命令如下:
systemctl start php-fpm.service #启动php-fpm systemctl enable php-fpm.service #设置开机启动
- 更改Nginx配置文件识别php:
把之前的vi /etc/nginx/conf.d/default.conf
#
给去掉就可以了,顺手改一下:
方法二 安装Nginxlocation ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/$fastcgi_script_name; include fastcgi_params; }
启动Nginx,并设置为开机启动:yum install nginx
systemctl start nginx systemctl enable nginx
vim /etc/nginx/conf.d/default.conf
- 在
/usr/share/nginx/html
中新建一个test.php: 访问即可看到php页面。 修改完成配置记得启动Apache 和php-fpm 哦!
九.负载配置
upstream site{
server 172.16.170.138;
server 172.16.170.139;
}
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
proxy_pass http://site;
}
}
Apache 默认目录:/var/www/html
Nginx 默认目录:/usr/share/nginx/html
十.升级PHP版本
CentOS 7 默认安装PHP是5.4。 查看yum的可安装的PHP版本列表:
yum provides php
开始升级PHP更新源:
rpm -Uvh
rpm -Uvh
yum remove php-common -y #移除系统自带的php-common
PHP 7.2 版本
yum install -y php72w php72w-opcache php72w-xml php72w-mcrypt php72w-gd php72w-devel php72w-mysql php72w-intl php72w-mbstring
PHP 5.6 版本
yum install -y php56w php56w-opcache php56w-xml php56w-mcrypt php56w-gd php56w-devel php56w-mysql php56w-intl php56w-mbstring #安装依赖包
查看PHP版本:
php -v
安装php-fpm:
yum install php72w-fpm
yum provides php-fpm #因为我是准备搭建LNMP,所以安装php-fpm,这里会提示多个安装源,选择5.6版本的安装就可以了
yum install php56w-fpm-5.6.31-1.w7.x86_64 -y
启动php-fpm并设置开机自启动:
systemctl start php-fpm.service
systemctl enable php-fpm.service
CentOS yum有时出现“Could not retrieve mirrorlist ”的解决办法——resolv.conf的配置
原因: 没有配置resolv.conf
解决方法:
到/etc
目录下配置resolv.conf加入nameserver IP,如:
nameserver 8.8.8.8
nameserver 8.8.4.4
search localdomain
保存再次运行上面的命令就可以。
Nginx目录:/usr/share/nginx/html
Nginx配置目录:/etc/nginx/conf.d/default.conf
Apache目录:/var/www/html
Apache配置文件:/etc/httpd/conf/httpd.conf
Nginx配置域名
cd /etc/nginx
cp default.conf imooc.conf
修改server_name imooc.test.com 以及项目目录
配置虚拟域名 windows访问需要在host增加 linuxip
ServerName
DocumentRoot "/var/www/html/learnlaravel/public"
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
关闭防火墙:
setenforce 0
如何在CentOS 6上通过YUM安装Nginx和PHP-FPM
准备篇:
- 配置防火墙,开启80端口、3306端口
特别提示:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败,正确的应该是添加到默认的22端口这条规则的下面。 添加好之后防火墙规则如下所示:vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT (允许80端口通过防火墙) -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT (允许3306端口通过防火墙)
######################################################### # Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -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 -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT #########################################################
/etc/init.d/iptables restart #最后重启防火墙使配置生效
- 关闭SELINUX
vi /etc/selinux/config #SELINUX=enforcing #注释掉 #SELINUXTYPE=targeted #注释掉 SELINUX=disabled #增加 :wq 保存,关闭 shutdown -r now #重启系统
- 配置CentOS 6.2 第三方yum源(CentOS默认的标准源里没有nginx软件包)
yum install wget #安装下载工具wget wget #下载atomic yum源 sh ./atomic #安装 yum check-update #更新yum软件包
安装篇:
一、安装Nginx
yum install nginx #安装nginx,根据提示,输入Y安装即可成功安装
service nginx start #启动
chkconfig nginx on #设为开机启动
/etc/init.d/nginx restart #重启
rm -rf /usr/share/nginx/html/* #删除nginx默认测试页
二、安装MySQL
- 安装MySQL:
yum install mysql mysql-server #询问是否要安装,输入Y即可自动安装,直到安装完成 /etc/init.d/mysqld start #启动MySQL chkconfig mysqld on #设为开机启动 cp /usr/share/mysql/my-medium.cnf /etc/my.cnf #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可) shutdown -r now #重启系统
- 为root账户设置密码:
回车,根据提示输入Y。 输入2次密码,回车。 根据提示一路输入Y。 最后出现:Thanks for using MySQL! MySQL密码设置完成,重新启动 MySQL:mysql_secure_installation
/etc/init.d/mysqld stop #停止 /etc/init.d/mysqld start #启动 service mysqld restart #重启
三、安装PHP
- 安装PHP:
yum install php #根据提示输入Y直到安装完成
- 安装PHP组件,使PHP支持 MySQL、PHP支持FastCGI模式:
yum install 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 libmcrypt-devel php-fpm #根据提示输入Y回车 /etc/init.d/mysqld restart #重启MySQL /etc/init.d/nginx restart #重启nginx /etc/rc.d/init.d/php-fpm start #启动php-fpm chkconfig php-fpm on #设置开机启动
配置篇
一、配置nginx支持php
cp /etc/nginx/nginx.conf /etc/nginx/nginx.confbak #备份原有配置文件
vi /etc/nginx/nginx.conf #编辑
user nginx nginx; #修改nginx运行账号为:nginx组的nginx用户
:wq! #保存退出
cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.confbak #备份原有配置文件
vi /etc/nginx/conf.d/default.conf #编辑
index index.php index.html index.htm; #增加index.php
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
取消FastCGI server部分location的注释,并要注意fastcgi_param
行的参数,改为$document_root$fastcgi_script_name
,或者使用绝对路径。
二、配置PHP
vi /etc/php.ini #编辑
date.timezone = PRC #在946行 把前面的分号去掉,改为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 #在386行 列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。
expose_php = Off #在432行 禁止显示php版本的信息
magic_quotes_gpc = On #在745行 打开magic_quotes_gpc来防止SQL注入
open_basedir = .:/tmp/ #在380行,设置表示允许访问当前目录(即PHP脚本文件所在之目录)和/tmp/目录,可以防止php木马跨站,如果改了之后安装程序有问题,可注销此行,或者直接写上程序目录路径/var/www/html/
:wq! #保存退出
三、配置php-fpm
cp /etc/php-fpm.d/ /etc/php-fpm.d/ #备份原有配置文件
vi /etc/php-fpm.d/ #编辑
user = nginx #修改用户为nginx
group = nginx #修改组为nginx
/etc/init.d/mysqld restart #重启MySQL
/etc/init.d/nginx restart #重启nginx
/etc/rc.d/init.d/php-fpm restart #重启php-fpm
测试篇
cd /usr/share/nginx/html/ #进入nginx默认网站根目录
vi index.php #新建index.php文件
<?php
phpinfo();
?>
:wq! #保存
chown nginx.nginx /usr/share/nginx/html/ -R #设置目录所有者
chmod 700 /usr/share/nginx/html/ -R #设置目录权限
在客户端浏览器输入服务器IP地址,可以看到相关的配置信息!
备注
- Nginx默认站点目录是:
/usr/share/nginx/html/
权限设置:chown nginx.nginx /usr/share/nginx/html/ -R
- MySQL数据库目录是:
/var/lib/mysql
权限设置:chown mysql.mysql -R /var/lib/mysql