php如何开启imap服务,PHP 扩展支持之 imap

From: https://blog.csdn.net/weixin_32938207/article/details/115172657

首先,进入php源码包ext目录,再进入imap目录。

[root@localhost ~]# cd imap/

[root@localhost imap]# phpize

fd95d85aa7b9d859d8739541e34f4b0f.png

再找到php-config路径

[root@localhost imap]# find / -name php-config

8f21d04684751ca329ba831800358d48.png

进行编译

[root@localhost

imap]# ./configure –with-php-config=/usr/local/php/bin/php-config

–with-kerberos –with-imap –with-imap-ssl –with-libdir=lib64

发现报错,如图

978f30cb7616a798b5769c37230d7c57.png

遇到这种报错,我要就需要安装 libc-client-devel 依赖。

[root@localhost imap]# yum -y install libc-client-devel

安装完成后,在进行编译,顺利通过,如图

968c1a75574ae198daccf65b57b54383.png

再进行make、make install

[root@localhost imap]# make

a5f9c1a686fc5541639388ce330bfb89.png

[root@localhost imap]# make install

f52a3916b80b528d7a855bee869c6b84.png

到这里,安装完成,然后编辑php.ini配置文件

[root@localhost imap]# vim /usr/local/php/etc/php.ini

再最后,加入如下三行后,重启apache、或者nginx服务

[imap]

extension_dir

=

/usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/

注意:这里的路径要根据make install 后的结果填写,不要照抄

extension = imap.so

[root@localhost imap]# service httpd restart      或者  systemctl restart httpd

或者

[root@localhost imap]# service nginx restart      或者  systemctl restart nginx

两种不同的重启方式,使用哪一种,取决于安装方式,编译安装,使用前者,yum安装使用后者

重启完成之后,我们进行验证。

打开 phpinfo 网页,或是使用 php -m 查看

fb478a3448a5a18a9f8eac653c1ae88e.png
6da89edc8bcf2301da8bb5f8862d8700.png

如果有上图中所示内容,说明 php 的 iamp 扩展安装成功,否则,请检查各项配置。

Centos8安装mysql5.7

From:https://www.jianshu.com/p/65527f186bd7

1、首先得切换到root账户:

su -

2、下载并安装MySQL官方的 Yum Repository

[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。

[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm

3、安装MySQL服务器

[root@localhost ~]# yum -y install mysql-community-server

此处碰到报错:All matches were filtered out by modular filtering for argument: mysql-community-server
解决方法:先执行 yum module disable mysql 再执行 yum install mysql-community-server

4、mysql数据库设置

4.1 启动数据库:[root@localhost ~]# systemctl start mysqld.service
4.2 查看MySQL运行状态:[root@localhost ~]# systemctl status mysqld.service
4.3 此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:[root@localhost ~]# grep "password" /var/log/mysqld.log

root密码
4.4 进入数据库:[root@localhost ~]# mysql -uroot -p
输入初始密码(上面图片绿框中),此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
其中‘new password’替换成你要设置的密码,注意:密码设置必须要大小写字母数字和特殊符号(,/’;:等),不然不能配置成功

5、开启mysql的远程访问

执行以下命令开启远程访问限制(注意:下面命令开启的IP是 192.168.0.1,如要开启所有的,用%代替IP):

mysql> grant all privileges on *.* to 'root'@'192.168.0.1' identified by 'password' with grant option;

刷新权限:mysql> flush privileges;
退出数据库:mysql> exit

6、为firewalld添加开放端口

添加mysql端口3306和Tomcat端口8080

[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent

[root@localhost ~]# firewall-cmd --zone=public --add-port=8080/tcp --permanent

然后再重新载入

[root@localhost ~]# firewall-cmd --reload

7、更改mysql编码方式

首先重新登录mysql,然后输入status:

Server characterset: latin1
Db characterset: latin1

可以看到,红框处不是utf-8
因此我们先退出mysql,然后再到、etc目录下的my.cnf文件下修改一下文件内容:

vi /etc/my.cnf

image.png
进入文件后,按 I 键进行编辑,新增下图四行代码:

[client]
default-character-set=utf8

[mysqld]

character-set-server=utf8
collation-server=utf8_general_ci


新增完,先按Esc键,然后按Shift + 键,输入wq,按Enter键
Tips:新增的代码中一个空格也不要有

8、在Windows下的CMD命令行启动mysql:

mysql -h 192.168.0.124 -P 3306 -u root -p

centos 8 install php 8


From: https://www.jianshu.com/p/04e8ad506ad7

更新软件到最新

yum update

下载php源码并解压

wget https://www.php.net/distributions/php-8.0.0.tar.gz

tar-xvzf php-8.0.0.tar.gz

cd php-8.0.0

安装gcc软件

yum install gcc gcc-c++ make

安装php依赖软件

yum install libxml2 libxml2-devel openssl openssl-devel freetype freetype-devel libzip libzip-devel sqlite sqlite-devel gd gd-devel libcurl-devel libicu libicu-devel libxslt libxslt-devel

安装oniguruma软件

yum install https://rpms.remirepo.net/enterprise/8/remi/x86_64/oniguruma5php-6.9.8-1.el8.remi.x86_64.rpm

yum install https://rpms.remirepo.net/enterprise/8/remi/x86_64/oniguruma5php-devel-6.9.8-1.el8.remi.x86_64.rpm

配置编译

./configure –prefix=/usr/local/php –with-zlib-dir –enable-mbstring –enable-soap –enable-calendar –with-curl –disable-rpath –enable-gd –enable-gd-jis-conv –with-bz2 –with-zlib –enable-sockets –enable-sysvsem –enable-sysvshm –enable-pcntl –enable-mbregex –enable-exif –enable-bcmath –with-mhash –with-pdo-mysql –with-mysqli –with-openssl –with-fpm-user=www –with-fpm-group=www –with-libdir=/lib/x86_64-linux-gnu/ –enable-ftp –with-gettext –with-xsl –enable-opcache –enable-fpm –with-iconv –with-zip –with-pear –with-freetype –enable-intl

开始编译

make -j4 #指定同时运行的作业数量,让尽可能多的作业同时运行。如果有一个以上的“-j”选项,最后一个选项是有效的。

安装php

make install

添加php.ini配置文件

cp php.ini-production /usr/local/php/lib/php.ini

以下操作为配置php

添加用户

useradd www

修改php-fpm.conf

cd /usr/local/php/etc

cp php-fpm.conf.default php-fpm.conf

cd php-fpm.d

cp www.conf.default www.conf

编辑www.conf文件,根据自己的服务器配置修改以下配置

pm.max_children=10

pm.start_servers=5

pm.min_spare_servers=4

pm.max_spare_servers=7

移除前面的注释;

;env[HOSTNAME] = $HOSTNAME

;env[PATH] = /usr/local/bin:/usr/bin:/bin

;env[TMP] = /tmp

;env[TMPDIR] = /tmp

;env[TEMP] = /tmp

修改php配置文件

cd /usr/local/php/lib

vim php.ini

修改内存限制

memory_limit=512M

修改上传文件限制

post_max_size=512M

upload_max_filesize=512M

启用OPcache 和 JIT; OPcache [1] 通过将 PHP 脚本预编译的字节码存储到共享内存中来提升 PHP 的性能, 存储预编译字节码的好处就是 省去了每次加载和解析 PHP 脚本的开销。

移除注释

;zend_extension=opcache

[opcache]

opcache.enable=1

opcache.memory_consumption=128

;opcache.interned_strings_buffer=8

;opcache.max_accelerated_files=10000

;opcache.validate_timestamps=1

在[opcache]添加jit支持

opcache.jit_buffer_size=128M

注意:虚拟机里可能启动时报错。

设置php-fpm开机启动

vim /usr/lib/systemd/system/php-fpm.service

其内容为

[Unit]

Description=The PHP FastCGI Process ManagerAfter=network.target

[Service]

Type=simple

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

ExecStart=/usr/local/php/sbin/php-fpm –nodaemonize –fpm-config /usr/local/php/etc/php-fpm.conf

ExecReload=/bin/kill -USR2 $MAINPID

PrivateTmp=true

[Install]

WantedBy=multi-user.target

保存退出后执行

systemctl enable php-fpm

systemctl start php-fpm

查看运行状态

systemctl status php-fpm

Linux命令行

ln -s /usr/local/php/bin/php /usr/bin/php

安装libphp.so

sudo yum install http://mirror.centos.org/centos/8-stream/AppStream/x86_64/os/Packages/php-common-8.0.20-1.module_el8.7.0+1191+c110972c.x86_64.rpm

sudo yum install http://mirror.centos.org/centos/8-stream/AppStream/x86_64/os/Packages/php-embedded-8.0.20-1.module_el8.7.0+1191+c110972c.x86_64.rpm

接着安装和配置httpd

http://yufeng.group/install-httpd/

Failed to download metadata for repo ‘appstream’: Cannot prepare internal mirrorlist: No URLs in mirror

处理办法:

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

#-O, –output-document=FILE 将文档写入 FILE。

#-o, –output-file=FILE 将日志信息写入 FILE。

yum makecache

sudo sed -i ‘s/mirrorlist/#mirrorlist/g’ /etc/yum.repos.d/CentOS-*

sudo sed -i ‘s|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g’ /etc/yum.repos.d/CentOS-*