导航:首页 > 编程语言 > phplibzip

phplibzip

发布时间:2022-12-10 23:11:19

⑴ 安装wordpress使用tengine怎么样

后台之前使用的Tengine+HHVM环境, 前段时间更新了 HHVM 之后,感觉访问 Blog 的速度慢了很多,不知道是不是与使用的某些插件不兼容的原因,正好 Aliyun 添加了 Ubuntu14.04镜像,趁这次更新系统的机会,重新采用Tengine+php-FPM的架构来运行 Wordpress.下面记录一下安装的过程.

备份好数据之后,在 Aliyun 后台更新系统盘,选择 Ubuntu 14.04这个镜像.
完成之后,登录到服务器.
先进行一些系统参数的优化设置.
#Synchronization timerm -rf /etc/localtimeln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtimeapt-get install -y ntpdatentpdate -u pool.ntp.orgdate#Disable Selinuxif [ -s /etc/selinux/config ]; thensed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/configfiif [ -s /etc/ld.so.conf.d/libc6-xen.conf ]; thensed -i 's/hwcap 1 nosegneg/hwcap 0 nosegneg/g' /etc/ld.so.conf.d/libc6-xen.conffi#set sysctl\cp /etc/sysctl.conf /etc/sysctl.conf.baksed -i 's/net\.ipv4\.tcp_syncookies.*/net\.ipv4\.tcp_syncookies = 1/' /etc/sysctl.confif cat /etc/sysctl.conf | grep "aliyun web add" > /dev/null ;thenecho ""elsecat >> /etc/sysctl.conf < /dev/null;then echo ""else echo "* soft nofile 65535" >> /etc/security/limits.conffiif cat /etc/security/limits.conf | grep "* hard nofile 65535" > /dev/null ;then echo ""else echo "* hard nofile 65535" >> /etc/security/limits.conffi

然后更新系统,安装必要的系统组件.
apt-get updateapt-get autoremove -yapt-get -fy installapt-get install -y build-essential gcc g++ makefor packages in build-essential gcc g++ make cmake automake autoconf re2c wget cron bzip2 libzip-dev libperl-dev libc6-dev iptables file lio* rcconf flex vim nano bison m4 gawk less make cpp binutils diffutils unzip tar bzip2 unrar p7zip libncurses5-dev libncurses5 libncurses5-dev libncurses5-dev libtool libevent-dev libpcre3 libpcre3-dev libpcrecpp0 zlibc openssl libsasl2-dev libltdl3-dev libltdl-dev libmcrypt-dev zlib1g zlib1g-dev libbz2-1.0 libbz2-dev libglib2.0-0 libglib2.0-dev libpng3 libjpeg62 libjpeg62-dev libpng-dev libpng12-0 libpng12-dev curl libcurl3 libmhash2 libmhash-dev libpq-dev libpq5 gettext libncurses5-dev libjpeg-dev libxml2-dev libfreetype6 libfreetype6-dev libssl-dev libcurl3 libcurl4-openssl-dev libcurl4-gnutls-dev mcrypt libcap-dev diffutils ca-certificates debian-keyring debian-archive-keyring;do apt-get install -y $packages --force-yes;apt-get -fy install;apt-get -y autoremove; done

接着下载Tengine并编译安装,我使用的是截至到当前的最新版本2.0.3.
wget -c http://tengine.taobao.org/download/tengine-2.0.3.tar.gztar zxf tengine-2.0.3.tar.gzcd tengine-2.0.3./configure --prefix=/usr/local/nginx \--user=www-data \--group=www-data \--with-http_stub_status_mole \--without-http-cache \--with-http_ssl_mole \--with-http_gzip_static_mole \--with-http_concat_mole CPU_NUM=$(cat /proc/cpuinfo | grep processor | wc -l)if [ $CPU_NUM -gt 1 ];then make -j$CPU_NUMelse makefimake install

Tengine安装过程还是很快的,用不了几分钟,就安装完成.接着下载一个 Tengine 的控制脚本,用于使用 service nginx start/stop/reload 等操作,并添加nginx 开机启动.
wget https://raw.github.com/JasonGiedymin/nginx-init-ubuntu/master/nginx -O /etc/init.d/nginxchmod +x /etc/init.d/nginxservice nginx status # to poll for current statussudo update-rc.d -f nginx defaults

至此,Tengine已经安装结束,使用 service nginx start启动Tengine之后,使用浏览器访问网站就可以看到相关的 Welcome 界面了.接下来我们开始安装 PHP.同样,我使用的也是当前的最新版本,PHP 5.5.17.
wget -c http://cn2.php.net/distributions/php-5.5.17.tar.gztar zxf php-5.5.17.tar.gzcd php-5.5.17./configure --prefix=/usr/local/php \--with-config-file-path=/usr/local/php/etc \--enable-fpm \--with-fpm-user=www-data \--with-fpm-group=www-data \--with-mysql=mysqlnd \--with-mysqli=mysqlnd \--with-pdo-mysql=mysqlnd \--enable-opcache \--enable-static \--enable-inline-optimization \--enable-sockets \--enable-wddx \--enable-zip \--enable-calendar \--enable-bcmath \--enable-soap \--with-zlib \--with-iconv \--with-gd \--with-xmlrpc \--enable-mbstring \--with-curl \--enable-ftp \--with-mcrypt \--disable-ipv6 \--disable-debug \--with-openssl \--disable-maintainer-zts \--disable-fileinfoCPU_NUM=$(cat /proc/cpuinfo | grep processor | wc -l)echo "make php"if [ $CPU_NUM -gt 1 ];then make ZEND_EXTRA_LIBS='-liconv' -j$CPU_NUMelse make ZEND_EXTRA_LIBS='-liconv'fimake install

PHP的编译时间比Tengine要长一些,耐心等待 PHP 编译安装完全之后,需要进入一些软链接操作.同时对 php.ini 和 php-fpm.conf 进行一些优化设置.
ln -s /usr/local/php/bin/php /usr/bin/phpln -s /usr/local/php/bin/phpize /usr/bin/phpizeln -s /usr/local/php/sbin/php-fpm /usr/bin/php-fpmmkdir -p /usr/local/php/etccp php.ini-proction /usr/local/php/etc/php.inised -i 's@expose_php = On@expose_php = Off@g' /usr/local/php/etc/php.inised -i 's/post_max_size = 8M/post_max_size = 50M/g' /usr/local/php/etc/php.inised -i 's/upload_max_filesize = 2M/upload_max_filesize = 50M/g' /usr/local/php/etc/php.inised -i 's/;date.timezone =/date.timezone = PRC/g' /usr/local/php/etc/php.inised -i 's/short_open_tag = Off/short_open_tag = On/g' /usr/local/php/etc/php.inised -i 's/; cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/g' /usr/local/php/etc/php.inised -i 's/; cgi.fix_pathinfo=0/cgi.fix_pathinfo=0/g' /usr/local/php/etc/php.inised -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/g' /usr/local/php/etc/php.inised -i 's/max_execution_time = 30/max_execution_time = 300/g' /usr/local/php/etc/php.inised -i 's/register_long_arrays = On/;register_long_arrays = On/g' /usr/local/php/etc/php.inised -i 's/magic_quotes_gpc = On/;magic_quotes_gpc = On/g' /usr/local/php/etc/php.inised -i 's/disable_functions =.*/disable_functions = passthru,exec,system,chroot,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,fsockopen/g' /usr/local/php/etc/php.ini#enable opcachesed -i '/;opcache.enable=0/i\zend_extension=opcache.so' /usr/local/php/etc/php.inised -i 's/;opcache.enable=0/opcache.enable=1/g' /usr/local/php/etc/php.inised -i 's/;opcache.enable_cli=0/opcache.enable_cli=1/g' /usr/local/php/etc/php.inised -i 's/;opcache.memory_consumption=64/opcache.memory_consumption=128/g' /usr/local/php/etc/php.inised -i 's/;opcache.interned_strings_buffer=4/opcache.interned_strings_buffer=8/g' /usr/local/php/etc/php.inised -i 's/;pcache.max_accelerated_files=2000/pcache.max_accelerated_files=4000/g' /usr/local/php/etc/php.inised -i 's/;opcache.revalidate_freq=2/opcache.revalidate_freq=60/g' /usr/local/php/etc/php.inised -i 's/;opcache.fast_shutdown=0/opcache.fast_shutdown=1/g' /usr/local/php/etc/php.inicat >/usr/local/php/etc/php-fpm.conf<<EOF[global]pid = /usr/local/php/var/run/php-fpm.piderror_log = /usr/local/php/var/log/php-fpm.loglog_level = notice[www]listen = /var/run/php5-fpm.socklisten.backlog = -1listen.allowed_clients = 127.0.0.1listen.owner = www-datalisten.group = www-datalisten.mode = 0666user = www-datagroup = www-datapm = dynamicpm.max_children = 10pm.start_servers = 2pm.min_spare_servers = 1pm.max_spare_servers = 6request_terminate_timeout = 100request_slowlog_timeout = 0slowlog = var/log/slow.logEOFcp ./php-5.5.17/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpmchmod +x /etc/init.d/php-fpm

最后,挂载备份的数据盘.从备份盘恢复网站数据,并修改 Nginx 的配置,恢复网站的正常访问.
mkdir -p /backupecho '/dev/xvdb1 /backup ext4 barrier=0 0 0' >> /etc/fstab mount -a

我已经将上面的过程编写成了一个脚本,可下载后查看(install.zip),也可以直接下载到服务器运行.完成之后,只需要添加 vhost的配置reload 一下 nginx 就可以正常访问了.
需要说明的是由于我使用了阿里云的 RDS,所以没有在服务器上安装 MySql.

⑵ centos7系统源码编译安装PHP7.3.5版本

新增系统用户组和用户:

下载 PHP7.3.5

[root@localhost ~]# mkdir devdir

[root@localhost ~]# cd devdir/

[root@localhost devdir]# wget https://www.php.net/distributions/php-7.3.5.tar.gz

-bash: wget: 未找到命令

[root@localhost devdir]# rpm -qa|grep wget

[root@localhost devdir]# yum -y install wget

[root@localhost devdir]# rpm -qa|grep wget

wget-1.14-18.el7.x86_64

下载PHP7 解压 编译

wget -c https://downloads.php.net/~cmb/php-7.3.4.tar.gz

编译参数解释

--with-fpm-user=webu --with-fpm-group=webg 添加PHP运行用户和用户组

配置信息出错:

下载gcc软件编译器 yum install -y gcc

configure: error: libxml2 not found. Please check your libxml2 installation.

下载libzip-1.5.2.tar.gz

https://libzip.org/download/libzip-1.5.2.tar.gz

解决libzip 和cmake版本问题

重新配置PHP7编译环境参数

libzip-1.5.2 无法安装,已经取消了。

提示off_t类型没有定义 undefind,解决方法:

编译安装

测试PHP是否安装成功

转载自:https://my.oschina.net/u/4127346/blog/3047778

⑶ zip密码 php

用PHP的zip模块进行压缩加密.

开始

$zipArc=newipArchive();if($zipArc->open('/home/test.zip',ZipArchive::CREATE|ZipArchive::OVERWRITE)===true){//设置密码注意此处不是加密,仅仅是设置密码
if(!$zipArc->setPassword('password')){thrownewRuntimeException('Setpasswordfailed');
}//往压缩包内添加文件
$zipArc->addFile('/home/test.png','1/test.png');//加密文件此处文件名及路径是压缩包内的
if(!$zipArc->setEncryptionName('1/test.png',ZipArchive::EM_AES_256)){thrownewRuntimeException('Setencryptionfailed');
}

}

$zipArc->close();

注意事项

1 PHP7.2以下不支持加密

php7.2 以下是不支持加密的,我们看一下php官方文档中的解释

从PHP 7.2.0和libzip 1.2.0开始,密码用于解压缩归档,也是ZipArchive :: setEncryptionName() 和ZipArchive :: setEncryptionIndex()的默认密码。

以前,此功能仅设置用于解压缩存档的密码; 它没有将非密码保护的ZipArchive 变成受密码保护的ZipArchive。

也就是说php7.2之前,setPassword('password')这个方法仅仅是设置setEncryptionName()和setEncryptionIndex()的默认密码,却没有进行加密操作!!!,就问你坑不坑!!

2 方法找不到

提示没有setEncryptionName和setEncryptionIndex方法时,请编译时zip模块时用以下参数

--with-libzip
--enable-zip

3 目录结构问题

待压缩的文件目录,比说说是/home/test/a.png
压缩后,你发现压缩包内的目录结构是/home/test/a.png,
也就是说压缩包原封不动的保持了原来文件的目录.可是我们想自定义压缩包目录怎么办呢?

$a = '/home/test.png';
$b = '1/test.png';//$a是待添加的文件路径 $b是压缩包内的路径$zipArc->addFile($a, $b);

⑷ 在linux 虚拟主机php环境中,php.ini 中 extension=zip.so 主要起什么作用

在php.ini 中增加extension=zip.so其作用是为php加载 zip 模块.

可参考以下资料:

Linux平台下PHP zip模块

1、依次运行以下命令:
wget http://pecl.php.net/get/zip-1.8.3.tgz //貌似已经出新版本了zip1.10.2.tgz
tar zxvf zip-1.8.3.tgz
cd zip-1.8.3
/usr/local/php/bin/phpize (对应的phpize路径)(安装好的php位置)
configure --with-php-config=/usr/local/php/bin/php-config (对应的php-config路径)(php-config文件名不能更改)
make
make install
//此时会在zip/moles/下生成一个zip.so文件,将它拷贝到make之后给的一个路径下,如有同名的,覆盖之。
2、生成的模块路径:
/usr/local/php/lib/php/extensions/no-debug-non-zts-20050922/zip.so (对应的extensions路径)
3、修改php.ini
extension_dir = "./"修改为extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20050922/"
增加extension=zip.so
4、重启apache
apache2/bin/apachectl restart

⑸ Linux 脚本编写 如何编写一个脚本,修改已有文件中的内容

实现的方法如下:

1、第一步,打开命令控制台以找到要编辑的文件,执行命令ls来查看下面的一些文件,在下面有一个index.php文件,如下图所示。

⑹ idevicerestore 一直提示未找到命令,该怎么破

本人同大多封釉一样,用ubuntu降级过程中第三步出现idevicerestore未知命令的错误。
发现是由于依赖库缺少或者依赖库版本过低问题导致。故只要安装正确的依赖库就行。。
下面教程开始:
打开终端,输入 su,接着输入密码。

1.输入apt-get update
2.输入apt-get upgrade

3.输入./buildpre
3.输入
sudo apt-get install build-essential automake cmake \libreadline6 autotools-dev libcurl4-openssl-dev autoconf \libplist1 libplist-utils libplist-dev libplist++-dev \libzip-dev git curl libgnutls-dev libreadline-dev l**b-dev \libtool l**b-1.0-0-dev l**bmuxd-dev libglib2.0-dev libimobiledevice-dev (全部复制,,红色部分是l和谐ibu和谐s和谐b)
4.输入
mkdir ~/idevicerestorecd ~/idevicerestoregit clone http://git.sukimashita.com/libirecovery.gitcd libirecovery./autogen.shmake && sudo make install
5.输入
cd ~/idevicerestoregit clone git://github.com/tcf38012/idevicerestore.gitcd idevicerestore./autogen.shmake && sudo make installsudo ldconfig
6.输入
cd ~/idevicerestoregit clone http://github.com/posixninja/ideviceactivate.gitcd ideviceactivatemake
7.输入apt-get install libreadline-dev
8.输入apt-get install python-dev
9.下载附件libplist-1.11,解压,然后在解压出来的文件夹里面新开一个终端,su,密码,
接着输入
9.1 输入 ./autogen.sh
9.2 输入make
9.3 输入make install
10.输入sh +x build.sh
至此,教程结束。能解决大多数依赖问题。后续降级步骤参考其他封釉帖子 。
11.输入 idevicerestore测试
libplist-1.11.tar.gz (2.04 MB, 下载次数: 79)

http://bbs.feng.com/forum.php?mod=attachment&aid=%3D%3D&request=yes&_f=.gz

⑺ 宝塔面板php7.3&7.4版本不支持ZipArchive手工安装扩展方法

宝塔面板安装的PHP7.3和7.4默认已经不带zip扩展,要手工安装zip扩展首先需要安装libzip,方法如下:

安装完成后,查看是否存在/usr/local/lib/pkgconfig目录,如果存在,执行如下命令来设置PKG_CONFIG_PATH:
export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig/"

在SSH命令行界面执行以下语句:

最后在重启一下 PHP 服务即可。

宝塔面板php7.4版本不支持ZipArchive导致程序无法后台直接更新的解决方法
在SSH命令行界面执行以下语句:

最后在重启一下 PHP 服务即可。

⑻ CentOS 7编译安装PHP 7.4提示No package 'libzip' found或者(libzip >= 0.11)

编译安装PHP 7.4提示No package 'libzip' found或者(libzip >= 0.11),原因是libzip没有安装或者版本太低,解决方法如下:

安装完成后,查看是否存在/usr/local/lib/pkgconfig目录,如果存在,执行如下命令来设置PKG_CONFIG_PATH:

⑼ PHP8、FPM及部分扩展编译安装

本着能懒则懒的原则,之前我都是宝塔、lnmp脚本等“一键”
再不济也得来个 apt/yum install php
什么?源码 make install ? 编译参数一言难尽,劝退劝退...我只是想要个开发环境而已

没关系!我来整理一下常用模块以及参数!环境为 ubuntu/debian

检查压缩包的完整性,与官网 sha256比较

安装以下包

官方的拓展分类
根据需要的模块添加其后对应的参数

包含常用模块,可以直接使用

编译并安装后
复制 php.ini 到默认目录 /usr/local/lib/

检查 php安装是否正确

复制 fpm 配置文件、运行服务文件
www.conf php-fpm.conf php-fpm.service

修改 fpm 用户和组,默认为nobody

修改服务文件,取消只读 不然日志不能读写无法启动

设置自启动并运行

本地起服务测试

No package 'libxml-2.0' found

No package ‘sqlite3‘ found

configure: WARNING: unrecognized options: –with-gd

No package 'zlib' found

No package 'libpng' found

No package 'oniguruma' found

No package 'libcurl' found

No package 'libsystemd' found

No package 'openssl' found

No package 'libzip' found

阅读全文

与phplibzip相关的资料

热点内容
相机卡满了没文件夹 浏览:747
如何批量快速压缩视频 浏览:432
我的世界如何加入ice服务器 浏览:873
兄弟cnc编程说明书 浏览:204
php闪电入门教程学习 浏览:152
金岳霖逻辑pdf 浏览:938
linuxtomcat线程 浏览:77
pboc长度加数据加密 浏览:187
英雄联盟国际服手游怎么下安卓 浏览:297
程序员的思路 浏览:234
只能用命令获得的四种方块 浏览:358
怎么用命令方块防止开创造 浏览:807
扫描版的pdf 浏览:790
编程猫怎样做3d游戏 浏览:207
怎么查找云服务器上的ftp 浏览:156
我的世界服务器如何注册账号 浏览:934
统计英文字符python 浏览:424
linux信息安全 浏览:910
压缩机接线柱爆 浏览:1001
程序员自主创业 浏览:586