这篇文章主要介绍了Centos6.4 编译安装 nginx php的方法,需要的朋友可以参考下
一. 准备依赖库
安装make:
yum -y install gcc automake autoconf libtool make
安装g++:
yum install gcc gcc-c++
二. 编译安装pcre
pcre 是一个正则表达式的库,编译nginx需要依赖该库实现url rewrite
下载源码
cd /usr/local/src wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.33.tar.bz2 tar jxvf pcre-8.33.tar.bz2
编译安装
cd pcre-8.33 ./configure make make install
三. 编译安装zlib库
zlib 是gzip实现
下载源码
cd /usr/local/src wget http://www.php.cn/ tar -zxvf zlib-1.2.8.tar.gz
编译安装
cd zlib-1.2.8 ./configure make make install
四. 安装openssl
检查是否安装了ssl
# rpm -qa|grep openssl openssl-devel-1.0.1e-16.el6_5.14.x86_64 openssl-1.0.1e-16.el6_5.14.x86_64
如果没有安装
下载源码
cd /usr/local/src wget http://www.php.cn/ tar -zxvf openssl-1.0.1c.tar.gz
编译安装
./configure make make install
五. 编译安装nginx
cd /usr/local/src wget http://www.php.cn/ tar -zxvf nginx-1.2.8.tar.gz cd nginx-1.2.8 ./configure --sbin-path=/usr/local/nginx/nginx \ --conf-path=/usr/local/nginx/nginx.conf \ --pid-path=/usr/local/nginx/nginx.pid \ --with-http_ssl_module \ --with-pcre=/usr/local/src/pcre-8.33 \ --with-zlib=/usr/local/src/zlib-1.2.8 \ --with-openssl=/usr/local/src/openssl-1.0.1c make make install
安装成功完毕后验证是否安装成功
/usr/local/nginx/nginx netstat -alptn|grep 80
六. 编译安装php
新版本的php中已经集成了php-fpm
1. 准备工作
yum -y install libmcrypt-devel mhash-devel libxslt-devel\ libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel\ zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel\ ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel\ krb5 krb5-devel libidn libidn-devel openssl openssl-devel
2. 源码编译安装libmcrypt
wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz tar -zxvf libmcrypt-2.5.7.tar.gz cd libmcrypt-2.5.7 ./configure make make install
3. 下载源码
wget http://www.php.cn/ tar zvxf php-5.4.7.tar.gz
4. 编译安装cd php-5.4.7
./configure --prefix=/usr/local/php \ --enable-fpm \ --enable-mbstring \ --enable-sockets \ --enable-sysvsem \ --enable-sysvshm \ --enable-pcntl \ --enable-mbregex \ --enable-zip \ --enable-inline-optimization \ --disable-pdo \ --disable-debug \ --disable-rpath \ --with-mcrypt \ --with-zlib \ --with-bz2 \ --with-mhash \ --with-curl \ --with-mysql \ --with-gd \ --with-pcre-regex \ --with-libdir=lib64
如果报如下错误
configure: error: Don't know how to define struct flock on this system, set --enable-opcache=no
修改 /etc/ld.so.conf 文件
vi /etc/ld.so.conf.d/local.conf #添加2行 /usr/local/lib64 //64系统 /usr/local/src/libmcrypt-2.5.7/lib/.libs #执行以下命令 chmod gu+x /etc/ld.so.conf.d/local.conf #执行以下命令使生效 ldconfig -v
再次执行命令
成功后编译安装
七. 配置启动
1. 配置php-fpm
cd /usr/local/php cp /etc/php-fpm.conf.default /etc/php-fpm.conf vi /etc/php-fpm.conf
修改
user = llong
group = llong
2. 修改nginx 支持 php-fpm
打开 nginx.conf
其中server段增加如下配置,注意标红内容配置,否则会出现No input file specified.错误
# 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; }
3. 测试是否配置成功
在/usr/local/nginx/html下创建index.php文件,输入如下内容
<? echo phpinfo(); ?>
启动php-fpm和nginx
/usr/local/php/sbin/php-fpm (手动打补丁的启动方式/usr/local/php/sbin/php-fpm start) /usr/local/nginx/nginx
以上就是Centos6.4 编译安装 nginx php代码示例方法的 详细介绍的内容,更多相关内容请关注PHP中文网(www.php.cn)!

在PHP中,可以使用session_status()或session_id()来检查会话是否已启动。1)使用session_status()函数,如果返回PHP_SESSION_ACTIVE,则会话已启动。2)使用session_id()函数,如果返回非空字符串,则会话已启动。这两种方法都能有效地检查会话状态,选择使用哪种方法取决于PHP版本和个人偏好。

sessionsarevitalinwebapplications,尤其是在commercePlatform之前。

在PHP中管理并发会话访问可以通过以下方法:1.使用数据库存储会话数据,2.采用Redis或Memcached,3.实施会话锁定策略。这些方法有助于确保数据一致性和提高并发性能。

PHPsessionshaveseverallimitations:1)Storageconstraintscanleadtoperformanceissues;2)Securityvulnerabilitieslikesessionfixationattacksexist;3)Scalabilityischallengingduetoserver-specificstorage;4)Sessionexpirationmanagementcanbeproblematic;5)Datapersis

负载均衡会影响会话管理,但可以通过会话复制、会话粘性和集中式会话存储解决。1.会话复制在服务器间复制会话数据。2.会话粘性将用户请求定向到同一服务器。3.集中式会话存储使用独立服务器如Redis存储会话数据,确保数据共享。

Sessionlockingisatechniqueusedtoensureauser'ssessionremainsexclusivetooneuseratatime.Itiscrucialforpreventingdatacorruptionandsecuritybreachesinmulti-userapplications.Sessionlockingisimplementedusingserver-sidelockingmechanisms,suchasReentrantLockinJ

PHP会话的替代方案包括Cookies、Token-basedAuthentication、Database-basedSessions和Redis/Memcached。1.Cookies通过在客户端存储数据来管理会话,简单但安全性低。2.Token-basedAuthentication使用令牌验证用户,安全性高但需额外逻辑。3.Database-basedSessions将数据存储在数据库中,扩展性好但可能影响性能。4.Redis/Memcached使用分布式缓存提高性能和扩展性,但需额外配

Sessionhijacking是指攻击者通过获取用户的sessionID来冒充用户。防范方法包括:1)使用HTTPS加密通信;2)验证sessionID的来源;3)使用安全的sessionID生成算法;4)定期更新sessionID。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

禅工作室 13.0.1
功能强大的PHP集成开发环境

SublimeText3 英文版
推荐:为Win版本,支持代码提示!