2018-06-28 12:44:00 csdnXiaoZou 阅读数 46
  • CentOS7 Linux入门实战视频课程

    此课程基于CentOS7.2 64位版本,讲解了CentOS7的安装、基础网络命令、网卡设置、文件与目录管理、进程与线程管理、VI编辑器、用户与权限、软件包管理、YUM软件仓库的搭建,在后教会大家如何地在Linux上搭建Discuz论坛。

    30661 人正在学习 去看看 杨璞

 

1、下载php 
官网下载:#wget http://cn2.php.net/get/php-7.2.7.tar.gz/from/a/mirror。
(ps:应该是这么下载的,但是我下载的都是一个mirror文件不是压缩包,所以我是用的浏览器下载然后上传到linux服务器。具体原因未知)

 

2、解压php压缩包

tar zxvf php-7.2.7.tar.gz

3、cd到解压目录执行

./configure --prefix=/usr/local/php7.2 --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-libxml --enable-inline-optimization --enable-mbregex
 --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap
 --enable-sockets --enable-sysvsem --enable-xml --enable-zip

如果有配置错误,需要安装模块,yum安装就好了。

yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel MySQL pcre-devel openssl openssl-devel curl-devel libxslt-devel

然后在重新安装

最后就是

make

make install

cp php.ini-production /usr/local/php7.2/etc/php.ini

cp /usr/local/php7.2/etc/php-fpm.conf.default.conf  php-fpm.conf

保存配置文件后,检验配置是否正确的方法为:

/usr/local/php/sbin/php-fpm -t

如果出现诸如 “test is successful” 字样,说明配置没有问题。

/usr/local/php7.2/sbin/php-fpm

检测是否启动:

ps -ef |grep php-fpm

说明启动成功。

到此就结束了。

4、把PHP加入环境变量

在文件末尾加上如下两行代码 
PATH=$PATH:/usr/local/php7/bin 
export PATH

然后执行命令 #source /etc/profile 或执行点命令 #./profile 使其修改生效,执行完可通过 #echo $PATH命令查看是否添加成功

查看php版本

php -v

 

2017-01-24 20:12:27 unixtech 阅读数 3831
  • CentOS7 Linux入门实战视频课程

    此课程基于CentOS7.2 64位版本,讲解了CentOS7的安装、基础网络命令、网卡设置、文件与目录管理、进程与线程管理、VI编辑器、用户与权限、软件包管理、YUM软件仓库的搭建,在后教会大家如何地在Linux上搭建Discuz论坛。

    30661 人正在学习 去看看 杨璞

XAMPP 1.8.3-5 for linux 安装包主要包含如下软件包


Apache 2.4.10 

MySQL 5.6.20

PHP 5.5.15 & PEAR + SQLite 2.8.17/3.7.17 + multibyte (mbstring) support

Perl 5.16.3

ProFTPD 1.3.4c

phpMyAdmin 4.2.7.1

OpenSSL 1.0.1i

ProFTPD 1.3.4c


安装步骤: 安装XAMPP 1.8.3-5 on 64 bit Linux systems:


# mkdir /wangsl

# cd /wangsl

下载 xampp-linux-x64-1.8.3-5-installer.run 

# wget https://sourceforge.net/projects/xampp/files/XAMPP%20Linux/1.8.3/xampp-linux-x64-1.8.3-5-installer.run

# chmod +x  xampp-linux-x64-1.8.3-5-installer.run

# ./xampp-linux-x64-1.8.3-5-installer.run

[root@localhost wangsl]# ./xampp-linux-x64-1.8.3-5-installer.run 


运行后显示内容如下:


----------------------------------------------------------------------------
Welcome to the XAMPP Setup Wizard.

----------------------------------------------------------------------------
Select the components you want to install; clear the components you do not want 
to install. Click Next when you are ready to continue.

XAMPP Core Files : Y (Cannot be edited)

XAMPP Developer Files [Y/n] :y


Is the selection above correct? [Y/n]: y


----------------------------------------------------------------------------
Installation Directory

XAMPP will be installed to /opt/lampp

Press [Enter] to continue:

----------------------------------------------------------------------------
Setup is now ready to begin installing XAMPP on your computer.

Do you want to continue? [Y/n]: y

----------------------------------------------------------------------------
Please wait while Setup installs XAMPP on your computer.

 Installing
 0% ______________ 50% ______________ 100%
 #########################################

----------------------------------------------------------------------------
Setup has finished installing XAMPP on your computer.

以上表示安装完成

卸载 

想卸载 XAMPP,只需输入如下命令:

rm -rf /opt/lampp


想启用带 SSL 支持的 Apache,只需输入如下命令(以 root 身份):

/opt/lampp/lampp startssl

现在您可以通过 SSL 形式的 https://localhost 访问 Apache 服务器了。


停止防火墙

systemctl stop firewalld.service

systemctl disable firewalld.service


测试输入网站地址浏览网站出现下面错误提示:

Access forbidden!


New XAMPP security concept:

Access to the requested object is only available from the local network.

This setting can be configured in the file "httpd-xampp.conf".


If you think this is a server error, please contact the webmaster.

Error 403

192.168.100.222
Apache/2.4.10 (Unix) OpenSSL/1.0.1i PHP/5.5.15 mod_perl/2.0.8-dev Perl/v5.16.3

 以上问题出现修改 xampp的配置文件:/opt/lampp/etc/extra/httpd-xampp.conf中将一下内容屏蔽 #Require local

#
# New XAMPP security concept
#
<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
        #Require local
        Require  all granted
        ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>
重新启动 xampp

#/opt/lampp/lampp restart


关闭SELinux:

编辑/etc/selinux/config,找到SELINUX 行修改成为:SELINUX=disabled:

# This file controls the state of SELinux on the system. 
# SELINUX= can take one of these three values: 
# enforcing - SELinux security policy is enforced. 
# permissive - SELinux prints warnings instead of enforcing. 
# disabled - No SELinux policy is loaded. 
SELINUX=disabled
 
# SELINUXTYPE= can take one of these two values: 
# targeted - Only targeted network daemons are protected. 
# strict - Full SELinux protection. 
SELINUXTYPE=targeted 


/opt/lampp/xampp security

安全设置

他会依次要求你

1、先输入xampp控制面板的密码(用户名是xampp 默认无需密码);

2、输入phpmyadmin的密码(用户名是pma 默认密码空)

3、输入mysql的密码(用户名是root 默认密码空)

4、输入ftp密码(用户名是daemon,默认密码是 xampp 默认端口21)

【中间输错了几次,所以让我重复输入,大家可以忽略】

 /opt/lampp/xampp security
XAMPP:  Quick security check...
XAMPP:  Your XAMPP pages are NOT secured by a password. 
XAMPP: Do you want to set a password? [yes] 
XAMPP: Password: 
XAMPP: Password (again): 
XAMPP:  Password protection active. Please use 'xampp' as user name!
XAMPP:  MySQL is accessable via network. 
XAMPP: Normaly that's not recommended. Do you want me to turn it off? [yes] 
XAMPP:  Turned off.
XAMPP: Stopping MySQL...ok.
XAMPP: Starting MySQL.../opt/lampp/share/xampp/xampplib: line 22: netstat: command not found ok.
XAMPP:  The MySQL/phpMyAdmin user pma has no password set!!! 
XAMPP: Do you want to set a password? [yes] yes 
XAMPP: Password: 
XAMPP: Password (again): 
XAMPP:  Setting new MySQL pma password.
XAMPP:  Setting phpMyAdmin's pma password to the new one.
XAMPP:  MySQL has no root passwort set!!! 
XAMPP: Do you want to set a password? [yes] yes
XAMPP:  Write the password somewhere down to make sure you won't forget it!!! 
XAMPP: Password: 
XAMPP: Password (again): 
XAMPP:  Setting new MySQL root password.
XAMPP:  Change phpMyAdmin's authentication method.
XAMPP:  The FTP password for user 'daemon' is still set to 'xampp'. 
XAMPP: Do you want to change the password? [yes] yes
XAMPP: Password: 
XAMPP: Password (again): 
XAMPP: Reload ProFTPD...ok.
XAMPP:  Done.


依次完成上面的密码修改


网络访问用户名xampp 密码自己设置

phpmyadmin pma 密码 用户自己设置密码

MySQL root 密码默认是无,自己修改root密码

proftp 默认用户名和密码是 daemon 密码是xampp 修改自己的ftp密码


修改 XAMPP用户pma的密码设置 修改配置文件phpmyadmin 目录下的config.inc.php

$cfg['Servers'][$i]['controluser'] = 'pma';
# commented out by xampp security
$cfg['Servers'][$i]['controlpass'] = '密码';



重要的文件和目录
文件/目录 用途
/opt/lampp/bin/ XAMPP 命令库。例如 /opt/lampp/bin/mysql 可执行 MySQL 监视器。
/opt/lampp/htdocs/ Apache 文档根目录。
/opt/lampp/etc/httpd.conf Apache 配制文件。


/opt/lampp/etc/my.cnf MySQL 配制文件。

# commented in by xampp security
# skip-networking  #如果这句打开的话3306 端口将无法访问;外网无法访问数据库。

/opt/lampp/etc/php.ini PHP 配制文件。
/opt/lampp/etc/proftpd.conf ProFTPD 配制文件。(从 0.9.5 版开始)
/opt/lampp/phpmyadmin/config.inc.php phpMyAdmin 配制文件。


停止 XAMPP

想停止 XAMPP,只需输入如下命令:
/opt/lampp/lampp stop

您现在应该能看到:

Restarting XAMPP for Linux 1.8.3-5...
XAMPP: Stopping Apache...ok.
XAMPP: Stopping MySQL...ok.
XAMPP: Stopping ProFTPD...ok.

然后 XAMPP 的 Linux 版就停止运行了。

卸载

想卸载 XAMPP,只需输入如下命令:
rm -rf /opt/lampp

卸载完成。:)


备份
做为系统安全保障的一部分,及时、全面的备份是一项必不可少的工作。数据库以及各软件的配置文件、日志等,经常会使管理员晕头转向,一不小心就会漏掉一项。而XAMPP则让这一工作变得非常简单,输入下面的命令就可一步完成:


/opt/lampp/lampp backup ****
命令后面跟着的是MySQL 的 root 用户的密码。命令执行后会看到下面的内容:

Backing up databases...

Backing up configuration, log and htdocs files...

Calculating checksums...

Building final backup file...

Backup finished.

Take care of /opt/lampp/backup/xampp-backup-19-02-06.sh

 
恢复
恢复以前的备份,只需以 root 用户身份运行下面的命令:

sh /opt/lampp/backup/xampp-backup-19-02-06.sh ****
命令后面跟着的是MySQL 的 root 用户的密码,这时用户将看到如下信息:


Checking integrity of files...

Restoring configuration, log and htdocs files...

Checking versions...

Installed: XAMPP 1.8.3

Backup from: XAMPP 1.8.3

Restoring MySQL databases...

Restoring MySQL user databases...

Backup complete. Have fun!

You may need to restart XAMPP to complete the restore.

恢复完后,需要重新启动XAMPP,才能使恢复的数据可用。


设置xampp开机自动运行centos 7.0 以前版本
(1)增加/opt/lampp/xampp的运行权限:
chmod 777 /opt/lampp/xampp
(2)在/etc/init.d下添加一个xampp的符号链接:
ln -s /opt/lampp/xampp /etc/init.d/xampp 
(3)加入到开机自动运行:
chkconfig --add xampp
(4)服务控制:
service xampp start #启动
service xampp stop #停止
service xampp restart #重启


设置xampp开机自动运行centos 7.0-7.2 版本,如下修改

Autostart on boot

In order to start Xampp at boot, service needs to be created, in the following file:

# vi /etc/systemd/system/xampp.service

Put these lines:

[Unit]
Description=XAMPP


[Service]
Type=forking
ExecStart=/opt/lampp/xampp start
ExecReload=/opt/lampp/xampp restart
ExecStop=/opt/lampp/xampp stop
PrivateTmp=True


[Install]
WantedBy=multi-user.target

Enable autostart like this:

# systemctl enable xampp.service


禁止自动启动:

# systemctl disable xampp.service

Usage

Use the following commands to control XAMPP:
# /opt/lampp/lampp start,stop,restart


设置xampp开机自动运行centos 7.2  版本

把启动程序的命令添加到/etc/rc.d/rc.local文件中,比如下面的是设置开机启动xampp 最后面增加一条红色的语句

#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.


touch /var/lock/subsys/local
#/opt/lampp/xampp start
~

再执行下面语句也能够执行开机自动启动程序

chmod +x /etc/rc.d/rc.local

systemctl enable rc-local.service


或者以下两条命令自动增加启动程序

echo "/opt/lampp/xampp start" >> /etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local


安装net-tools 工具

yum install net-tools


关闭FTP服务  在xampp启动后,执行
/opt/lampp/xampp stopftp 



2019-06-24 10:04:08 qq_39490637 阅读数 41
  • CentOS7 Linux入门实战视频课程

    此课程基于CentOS7.2 64位版本,讲解了CentOS7的安装、基础网络命令、网卡设置、文件与目录管理、进程与线程管理、VI编辑器、用户与权限、软件包管理、YUM软件仓库的搭建,在后教会大家如何地在Linux上搭建Discuz论坛。

    30661 人正在学习 去看看 杨璞

Linux7.2+php7.2+Nginx 的安装及phalcon扩展安装

// An highlighted block
一、安装php
1、yum安装php
	(1.更换yum原
	# yum install epel-release
	# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
	# yum install php72w
	(2).查看yum源中有没有php7.x
	yum search php7
	(3)yum 安装php72w和各种拓展,选自己需要的即可:
	yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml
	(4)安装完成
	查看php版本
	php -v

2、记得yum -y install *** 安装wget和unzip等扩展
3、安装yum安装composer
4、用composer安装phalcon扩展(如果没用到phalcon框架则不用安装),可能会报apcu扩展错误,则先安装apcu扩展
5、编译安装扩展后,make后提示make test,执行,然后再执行make install
5、apcu扩展安装后记得加入到php.ini里
6、phalcon扩展安装后不用加入php.ini,需新建phalcon.ini文件,写入extension=phalcon.so保存,放入到/etc/php.d目录中(具体目录看你安装,里面都是扩展的ini文件的目录)1)、如果内存不足,编译失败,使用分区交换
		#dd if=/dev/zero of=/swapfile bs=1k count=20480000 --获取要增加的20G的SWAP文件块(大小自己写,自己								服务器1G内存好像只换取了16G大小)
		# mkswap /swapfile     -- 创建SWAP文件
		# swapon /swapfile     -- 激活SWAP文件
		# swapon -s            -- 查看SWAP信息是否正确
	(2)编译完后, 如果不想要交换分区了, 可以删除:
		# swapoff /swapfile
		# rm -fr /swapfile
	(3)参考地址:http://www.zhimengzhe.com/bianchengjiaocheng/qitabiancheng/284820.html

7、重启php或php-fpm即可,使用php -m查看扩展

二、安装nginx
1、yum install -y wget
  
yum install -y vim-enhanced
  
yum install -y make cmake gcc gcc-c++
  
yum install -y pcre pcre-devel

  yum install -y zlib zlib-devel

  yum install -y openssl openssl-devel

2、wget http://nginx.org/download/nginx-1.12.2.tar.gz
3、解压
	tar -zxvf nginx-1.12.2.tar.gz 
	cd nginx-1.12.2
4、执行如下命令
./configure \

--prefix=/usr/local/nginx \

--pid-path=/var/run/nginx/nginx.pid \

--lock-path=/var/lock/nginx.lock \

--error-log-path=/var/log/nginx/error.log \

--http-log-path=/var/log/nginx/access.log \

--with-http_gzip_static_module \

--http-client-body-temp-path=/var/temp/nginx/client \

--http-proxy-temp-path=/var/temp/nginx/proxy \

--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \

--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \

--with-http_stub_status_module \

--with-http_ssl_module \

--http-scgi-temp-path=/var/temp/nginx/scgi
5、编译
	make && make install
6、启动
	cd /usr/local/nginx/sbin/
	./nginx
	备注:启动时,出现错误:nginx: [emerg] mkdir() "/var/temp/nginx/client" failed (2: No such file or directory)
	执行:sudo mkdir -p /var/temp/nginx   命令即可
7、查看
	ps -aux | grep nginx
8、退出nginx
	cd /usr/local/nginx/sbin
	/nginx -s quit
9、重启nginx
	cd /usr/local/nginx/sbin
	./nginx -s reload

三、yum安装mysql5.7
1、下载和安装mysql源(下载 mysql源安装包)
	wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
2、安装mysql源
	yum -y localinstall mysql57-community-release-el7-11.noarch.rpm 
3、在线安装Mysql
	yum -y install mysql-community-server
4、启动Mysql服务
	systemctl start mysqld
5、设置开机启动
	systemctl enable mysqld
	systemctl daemon-reload
6、修改root本地登录密码(mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个临时的默认密码。)
	vi /var/log/mysqld.log      -->打开后找到root@localhost:******  此处是密码
7、登录
	mysql -u root -p
 	Enter password:
8、第一次需修改密码才能正常用命令访问
	ALTER USER 'root'@'localhost' IDENTIFIED BY '******';      -->此处新密码
	备注:可能会出现密码策略问题(即密码有大小写数字组成),如嫌麻烦执行:
		set global validate_password_policy=0;       -->修改为0密码判断标准基于密码长度
	
9、如果本地连接不到线上数据库参考(设置允许指定ip连接数据库):
	https://blog.csdn.net/qq_39206238/article/details/80351803
10、	firewall-cmd --zone=public --add-port=3306/tcp --permanent
	firewall-cmd --reload
11、配置默认编码为UTF-8
修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:
	vi /etc/my.cnf
		[mysqld]
		character_set_server=utf8
		init_connect='SET NAMES utf8'
12、编辑保存完 重启mysql服务: systemctl restart mysqld
13、查看下编码:show variables like '%character%';

参考地址:
https://www.cnblogs.com/ivictor/p/5142809.html
https://blog.csdn.net/qq_36628908/article/details/80243713

2019-10-26 19:32:57 qq_40198004 阅读数 2198
  • CentOS7 Linux入门实战视频课程

    此课程基于CentOS7.2 64位版本,讲解了CentOS7的安装、基础网络命令、网卡设置、文件与目录管理、进程与线程管理、VI编辑器、用户与权限、软件包管理、YUM软件仓库的搭建,在后教会大家如何地在Linux上搭建Discuz论坛。

    30661 人正在学习 去看看 杨璞

mysql-5.7.28 的Linux安装

1.官网下载Linux的版的 https://dev.mysql.com/downloads/mysql/5.7.html
在这里插入图片描述
2.上传tar包到服务器到 /usr/local/src
3.卸载系统自动的Mariadb rpm -qa | grep mariadb rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
在这里插入图片描述
4.检查是否有mysql存在

rpm -qa|grep -i mysql

5.查询是否还有mysql的目录find / -name mysql
在这里插入图片描述
6.解压:tar -zxvf
在这里插入图片描述
7.修改名称:mv mysql-5.7.28-linux-glibc2.12-x86_64/ mysql-5.7.28
8.检查mysql组和用户是否存在,如无创建
cat /etc/group | grep mysql
cat /etc/passwd | grep mysql
创建mysql组,并创建mysql用户加入mysql组中
groupadd mysql
useradd -g mysql mysql
passwd mysql #设置密码
在这里插入图片描述
8.更改所属的组和用户

[root@localhost src]# chown -R mysql mysql-5.7.28/
[root@localhost src]# chgrp -R mysql mysql-5.7.28/

在这里插入图片描述
9.创建data
在这里插入图片描述
10.删除etc下的my.cnf :rm -rf /etc/my.cnf;创建my.cnf

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 
[mysqld]
skip-name-resolve
#设置3306端口
port = 3306 
# 设置mysql的安装目录
basedir=/usr/local/src/mysql-5.7.28
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/src/mysql-5.7.28/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB 
lower_case_table_names=1
max_allowed_packet=16M

11.安装初始化:bin/mysql_install_db --user=mysql --basedir=/usr/local/src/mysql-5.7.28/ --datadir=/usr/local/src/mysql-5.7.28/data/
在这里插入图片描述
12.重新修改下各个目录的权限

[root@localhost mysql-5.7.28]# chown -R root:root /usr/local/src/mysql-5.7.28/
[root@localhost mysql-5.7.28]# chown -R mysql:mysql /usr/local/src/mysql-5.7.28/data/

启动mysql
/usr/local/src/mysql-5.7.28/bin/mysqld_safe --user=mysql &
13. [root@localhost bin]# ./mysql -u root -p # 若默认没有密码,直接敲回车就可以
14. 如果不记得密码,vi /etc/my.cnf 在增加:skip-grant-tables 保存并退出(:wq)
15. 重启mysql:service mysqld restart ,然后./mysql -u root -p 直接回车
16. 修改密码:update user set authentication_string=password('123456) where user='root';

flush privileges;
quit;

在这里插入图片描述
18.再次修改my.cnf:vi /etc/my.cnf 把刚刚添加的::skip-grant-tables 删除 保存并退出(:wq)
19.重启mysql :service mysqld restart ;./mysql mysql -u root -p 进入
在这里插入图片描述
20.若出现这个
在这里插入图片描述

systemctl stop firewalld.service #关闭防火墙服务
systemctl disable firewalld.service #禁止防火墙开启启动
firewall-cmd --state #检查防火墙状态
service mysqld restart

21.修改权限

use mysql;
grant all privileges on *.* to root@"%" identified by "123456";

22.若出现报错
在这里插入图片描述

SET PASSWORD = PASSWORD('123456');

在这里插入图片描述
23.连接成功
在这里插入图片描述

2018-06-07 18:42:32 gocuber 阅读数 2036
  • CentOS7 Linux入门实战视频课程

    此课程基于CentOS7.2 64位版本,讲解了CentOS7的安装、基础网络命令、网卡设置、文件与目录管理、进程与线程管理、VI编辑器、用户与权限、软件包管理、YUM软件仓库的搭建,在后教会大家如何地在Linux上搭建Discuz论坛。

    30661 人正在学习 去看看 杨璞

Linux-CentOS6.9安装PHP7.2

sudo -s
安装依赖

部分依赖已经在安装PHP5.6时已经安装,这里没有列出;建议看下Linux-CentOS6.9安装PHP5.6,安装依赖部分,将PHP所需依赖库安装;

yum groupinstall "Development Tools"
yum install libxml2-devel openssl-devel libcurl-devel gd-devel gmp-devel libicu-devel recode recode-devel libxslt libxslt-devel
安装PHP-7.2.6

官网手动下载 php-7.2.6.tar.gz

cd /data0/software

tar zxvf php-7.2.6.tar.gz
cd php-7.2.6/

./configure \
--prefix=/usr/local/php72 \
--with-config-file-path=/usr/local/php72/etc \
--disable-debug \
--disable-phpdbg \
--enable-mysqlnd \
--enable-bcmath \
--with-bz2=/usr \
--enable-calendar \
--with-curl \
--enable-exif \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--with-freetype-dir \
--enable-ftp \
--with-gd \
--enable-gd-jis-conv \
--with-gettext=/usr \
--with-gmp \
--with-iconv \
--with-iconv-dir=/usr/local/libiconv \
--enable-intl \
--with-jpeg-dir \
--enable-mbstring \
--with-openssl \
--with-mhash \
--enable-pcntl \
--with-pdo-mysql=mysqlnd \
--with-png-dir \
--with-recode \
--enable-shmop \
--enable-soap \
--enable-sockets \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-wddx \
--with-xmlrpc \
--with-xsl \
--with-zlib=/usr \
--enable-zip \
--with-libxml-dir=/usr \
--enable-xml \
--with-mysqli=mysqlnd \
--enable-fileinfo \
--enable-opcache \
--with-libdir=lib64 \
--enable-maintainer-zts


# --enable-opcache            # PHP7.2 相对于 PHP7.1 主要优化 opcache
# --with-libdir=lib64         # 64位系统需指定 lib64 32位系统去掉此项
# --enable-maintainer-zts     # ZTS 线程安全,默认 NTS 非线程安全

# make clean   # 如果之前编译过 需要清除上次的编辑结果

make
make install

cp php.ini-development /usr/local/php72/etc/php.ini

修改php.ini配置

vim /usr/local/php72/etc/php.ini

# 找到 ;cgi.fix_pathinfo=1 修改为
cgi.fix_pathinfo=0

# 找到 ;date.timezone = 修改为
date.timezone = PRC

查看版本

/usr/local/php72/bin/php -v

PHP 7.2.6 (cli) (built: Jun  7 2018 11:08:13) ( ZTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
配置php-fpm

修改php-fpm配置文件

cp /usr/local/php72/etc/php-fpm.conf.default /usr/local/php72/etc/php-fpm.conf

vi /usr/local/php72/etc/php-fpm.conf

# 找到 ;pid = run/php-fpm.pid 修改为

pid = /usr/local/php72/var/run/php-fpm.pid

修改www.conf

cp /usr/local/php72/etc/php-fpm.d/www.conf.default /usr/local/php72/etc/php-fpm.d/www.conf
vi /usr/local/php72/etc/php-fpm.d/www.conf

user = www
group = www


# 找到 listen = 127.0.0.1:9000 如果启了php5 或其它 9000端口被占用的话 修改为

listen = 127.0.0.1:9001

配置 php-fpm 启动脚本 注册为系统服务 设置开机启动

cp /data0/software/php-7.2.6/sapi/fpm/php-fpm /usr/local/php72/bin
cp /data0/software/php-7.2.6/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm72

将/etc/init.d/php-fpm72开始的注释部分php-fpm改为php-fpm72 虽然是注释,但在Linux下注册系统服务要求的格式;如果你不注册为系统服务则不需要改;

vi /etc/init.d/php-fpm72

#! /bin/sh

### BEGIN INIT INFO
# Provides:          php-fpm72
# Required-Start:    $remote_fs $network
# Required-Stop:     $remote_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts php-fpm72
# Description:       starts the PHP FastCGI Process Manager daemon
### END INIT INFO

授予可执行权限

chmod +x /etc/init.d/php-fpm72

添加php-fpm72至服务列表并设置开机自启

chkconfig --add php-fpm72
chkconfig --list php-fpm72
chkconfig php-fpm72 on

php-fpm72 几个参数 start|stop|force-quit|restart|reload|status|configtest

service php-fpm72 start       # 启动服务
service php-fpm72 stop        # 停止服务
service php-fpm72 restart     # 重启服务
service php-fpm72 reload      # 平滑重启服务
service php-fpm72 force-quit  # 强制退出服务
service php-fpm72 status      # 查看服务状态
service php-fpm72 configtest  # 检查配置

启动php-fpm72服务

service php-fpm72 configtest   # 检查配置 显示如下 说明配置没有问题

# [07-Jun-2018 11:53:45] NOTICE: configuration file /usr/local/php72/etc/php-fpm.conf test is successful

service php-fpm72 start        # 启动

# Starting php-fpm  done 启动成功

查看php-frm进程 显示php-fpm72版本 和之前的php-fpm56版本

ps -ef |grep php

root      1805     1  0 09:48 ?        00:00:00 php-fpm: master process (/usr/local/php56/etc/php-fpm.conf)                                                                                        
nobody    1806  1805  0 09:48 ?        00:00:00 php-fpm: pool www                                                                                                                                          
nobody    1807  1805  0 09:48 ?        00:00:00 php-fpm: pool www                                                                                                                                          
root     31580     1  0 11:54 ?        00:00:00 php-fpm: master process (/usr/local/php72/etc/php-fpm.conf)                                                                        
www      31581 31580  0 11:54 ?        00:00:00 php-fpm: pool www                                                                                                                  
www      31582 31580  0 11:54 ?        00:00:00 php-fpm: pool www                                                                                                                  
root     31585  3311  0 11:54 pts/1    00:00:00 grep php
Nginx新建server

新建网站目录

mkdir -p /data0/vhosts/php72
chmod +w /data0/vhosts/php72
chown -R www:www /data0/vhosts/php72

修改nginx.conf配置 新增server

vi nginx.conf

server
{
    listen       80;
    server_name  dev.php72.gocuber.com;
    index index.html index.htm index.php;
    root  /data0/vhosts/php72;

    location ~* \.php$ {
        fastcgi_index   index.php;
        fastcgi_pass    127.0.0.1:9001;
        include         fastcgi_params;
        fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;
        fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;
    }

    access_log  /data0/logs/wwwlogs.log  wwwlogs;
}

检查nginx配置 平滑重启nginx

/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload

/data0/vhosts/php72新建phpinfo.php index.php

phpinfo();

访问
http://dev.php72.gocuber.com/phpinfo.php

官方安装说明
页面最下方列出了常见问题及解决办法
http://php.net/manual/zh/install.unix.nginx.php

官方 configure 选项列表说明
http://php.net/manual/zh/configure.about.php

Linux权限管理

阅读数 90

没有更多推荐了,返回首页