PHP-FPM NGinx Pthreads Linux安装
PHP-FPM NGinx Pthreads Linux installation
我正在尝试实现多个上传功能(一次上传到多个地方)。
我在 windows (XAMPP + PThreads DLL's) 上成功实现了这一点,但是在安装 PHP-FPM+php-pecl-pthreads.x86_64 并扩展线程时class 我收到错误消息:
include(Thread.php): failed to open stream: No such file or directory
我尝试添加与 php.ini 相关的所有 pthreads.so:
/usr/lib64/php/modules/pthreads.so
/usr/lib64/php-zts/modules/pthreads.so
/usr/lib64/libpthread.so
/usr/lib/gcc/x86_64-redhat-linux/4.4.4/32/libmudflapth.so
/lib64/libpthread-2.12.so
但我得到
undefined symbol: core_globals_id in Unknown on line 0
在我的 phpinfo 上,我看到线程安全被禁用。
有没有人实现这个功能,并且可以阐明如何一次上传到多个地方/在 linux.
上成功安装 pthreads
谢谢,
丹尼
对于debian/ubuntu
- 下载 php 源码(确保你有 deb-src)
apt-get source php5
- 转到那个目录
cd php5*
- 转到分机目录
cd ext
- 下载 pthreads
git clone https://github.com/krakjoe/pthreads.git
- 重建配置设置
cd .. && ./buildconf --force
- 确保配置选项中有 pthreads
./configure --help | grep pthre
- 运行 配置(根据您的设置更改路径)
./configure --enable-debug --enable-maintainer-zts --enable-pthreads --prefix=/usr --with-config-file-path=/etc --with-apxs2=/usr/bin/apxs2 --enable-fpm
- 如果需要,请访问 this 了解有关 user/group 特定选项的更多信息。
make -j2
make -j2 install
- 现在您将 php 编译为支持 pthreads。验证这一点:
php -m | grep pthreads
- 制作初始化脚本
copy sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
- 将
user
和group
更改为nginx在/etc/init.d/php-fpm
中使用的用户名。
service nginx restart
- 转到你的 nginx public folder
cd <your-nginx-public-folder>
touch phpinfo.php && echo "<?php phpinfo();" >> phpinfo.php
转到您的浏览器并在 http://<your url>/phpinfo.php
刚刚创建的 php 文件
中搜索 pthreads
我正在尝试实现多个上传功能(一次上传到多个地方)。 我在 windows (XAMPP + PThreads DLL's) 上成功实现了这一点,但是在安装 PHP-FPM+php-pecl-pthreads.x86_64 并扩展线程时class 我收到错误消息:
include(Thread.php): failed to open stream: No such file or directory
我尝试添加与 php.ini 相关的所有 pthreads.so:
/usr/lib64/php/modules/pthreads.so
/usr/lib64/php-zts/modules/pthreads.so
/usr/lib64/libpthread.so
/usr/lib/gcc/x86_64-redhat-linux/4.4.4/32/libmudflapth.so
/lib64/libpthread-2.12.so
但我得到
undefined symbol: core_globals_id in Unknown on line 0
在我的 phpinfo 上,我看到线程安全被禁用。
有没有人实现这个功能,并且可以阐明如何一次上传到多个地方/在 linux.
上成功安装 pthreads谢谢, 丹尼
对于debian/ubuntu
- 下载 php 源码(确保你有 deb-src)
apt-get source php5
- 转到那个目录
cd php5*
- 转到分机目录
cd ext
- 下载 pthreads
git clone https://github.com/krakjoe/pthreads.git
- 重建配置设置
cd .. && ./buildconf --force
- 确保配置选项中有 pthreads
./configure --help | grep pthre
- 运行 配置(根据您的设置更改路径)
./configure --enable-debug --enable-maintainer-zts --enable-pthreads --prefix=/usr --with-config-file-path=/etc --with-apxs2=/usr/bin/apxs2 --enable-fpm
- 如果需要,请访问 this 了解有关 user/group 特定选项的更多信息。
make -j2
make -j2 install
- 现在您将 php 编译为支持 pthreads。验证这一点:
php -m | grep pthreads
- 制作初始化脚本
copy sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
- 将
user
和group
更改为nginx在/etc/init.d/php-fpm
中使用的用户名。
service nginx restart
- 转到你的 nginx public folder
cd <your-nginx-public-folder>
touch phpinfo.php && echo "<?php phpinfo();" >> phpinfo.php
转到您的浏览器并在
中搜索 pthreadshttp://<your url>/phpinfo.php
刚刚创建的 php 文件