欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

nginx 部署:在cygwin下部署PHP环境,mssql+PHP +nginx+freetds

程序员文章站 2022-05-09 16:47:26
...
因为公司的环境是在linux下,所以想在自己的机器上搭建个模仿linux的环境
环境为linux +mssql+PHP +nginx+freetds
于是就想到了cygwin
去http://www.cygwin.com 下载setup.exe
然后安装,安装方法网上一大堆,主要是要安装好GCC相关的东西,我是把 devel目录下的东西都安装上
默认是default 点击下default 可以变成install
下载nginx
http://nginx.org/download/nginx-1.2.6.tar.gz
安装
tar zxvf nginx-1.2.6.tar.gz
cd nginx-1.2.6
./configure
make && make install
如果没有提示出错的话就是安装好了,进入默认的安装目录 cd /usr/local/nginx
cd sbin
如果有nginx.exe就说明安装成功了 要启动nginx ./nginx.exe就行了
就可以用ps -efgrep nginx看到进程了
然后是安装freetds
去http://www.freetds.org/下载freetds
ftp://ftp.freetds.org/pub/freetds/stable/freetds-stable.tgz
安装跟nginx一样
tar freetds-stable.tgz
cd freetds-0.91
./configure
make && make install
然后安装PHP
下载PHP
http://us1.php.net/distributions/php-5.4.11.tar.gz

tar php-5.4.11.tar.gz
cd php-5.4.11
./configure --prefix=/usr/local/php --enable-mbstring --enable-sockets --with-config-file-path=/usr/local/php --with-mssql=/usr/local/freetds --enable-fpm
make && make install
一些警告忽略掉,然后启动PHP
cd /usr/local/php/sbin/
./php-fpm.exe 就可以启动php fpm了
但是用CI框架 发现
$_SERVER['SCRIPT_NAME']获取URL的路径有问题

正常$_SERVER['REQUEST_URI'] 获取的是/index.php/welcome
$_SERVER['SCRIPT_NAME'] 获取的应该是/index.php
但是我的cygwin获取的是 $_SERVER['REQUEST_URI'] 获取的是/index.php/welcome
$_SERVER['SCRIPT_NAME'] 获取的应该是/index.php/welcome
两个是一样的,这样就有问题了,
还有一个是下载了PHPredis安装也没出错,但是 在php.ini加扩展时总是提示出错
NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/redisa' - Exec format error in Unknown on line 0

怀疑是不是PHP没安装好,因为有很多警告,不知道有没有发生过错误,待重新安装一次确认下
安装redis时 会报redis.c:1xxx: error: `SA_ONSTACK' undeclared (first use in this function) 的错误
因为cygwin里没有定义SA_ONSTACK
在sys/resource.h中加上
ifndef SA_ONSTACK
define SA_ONSTACK 0
endif 本文链接http://www.cxybl.com/html/wlbc/Php/20130601/38184.html