Tag Archives: lnmp

Centos下添加PHP对MSSQL的支持

其实很少会有连接SQL Server的机会,不过我们公司刚好有个应用需要使用的SQL Server的数据库,所以也知道给LNMP安装MSSQL的扩展。
搜索网上的相关文章一般的解决方案是Freetds,Freetds的主要功能就是让Linux系统可以访问SQL Server服务。

安装Freetds

Freetds 官方网站是 http://www.freetds.org,可以去官方网站下载程序,文中下载的是0.92.79版本。

wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-0.92.79.tar.gz

然后解压,并且编译安装

tar -zxvf freetds-0.92.79.tar.gz
cd freetds-0.92.79
./configure --prefix=/usr/local/freetds
gmake
gmake install

安装完成后可以使用命令测试下

/usr/local/freetds/bin/tsql -S 192.168.0.10:1433 -U sa

安装PHP的MSSQL扩展

本服务器使用的是lnmp集成环境,php是5.3.21;如果是单独安装php的也一样;先进入下载加压后的PHP文件目录,然后编译安装

cd /data/lnmp0.9-full/php-5.3.21
cd ext/mssql
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-mssql=/usr/local/freetds
make
make install

随后在php.ini中添加扩展

vim /usr/local/php/etc/php.ini

在最后加入一行

extension = "mssql.so"

最后重启php即可

配置Freetds

vim /usr/local/freetds/etc/freetds.conf

在文件中加入以下语句

[sqlservername]
host = 192.168.0.10
port = 1433
tds version = 7.0
client charset = UTF-8

PHP中测试连接

新建一个php文件,放入以下代码

$conn = mssql_connect("sqlservername", "sa", "password") or die ("无法连接");
echo $conn;

现在你的php已经完全支持连接SQL Server了。

LNMP添加ImageMagick

ImageMagick 是一个免费的创建、编辑、合成图片的软件。它可以读取、转换、写入多种格式的图片。图片切割、颜色替换、各种效果的应用,图片的旋转、组合,文本,直线,多边形,椭圆,曲线,附加到图片伸展旋转。

但是LNMP只默认安装了GD,在此提供下LNMP下安装ImageMagick以及imagick扩展的方法。

1、安装ImageMagick
首先要下载最新的编译包,最新的包可以在下面的地址中找到http://www.imagemagick.org/download/
我们在这里选择ImageMagick-6.7.8-8.tar.gz

wget http://www.imagemagick.org/download/ImageMagick-6.7.8-8.tar.gz
tar -zxvf ImageMagick-6.7.8-8.tar.gz
cd ImageMagick-6.7.8-8/
./configure --prefix=/usr/local/imagemagick
make && make install

安装完成后可以使用以下命令验证下

convert -version

如果正常会显示版本号;也可能会出现错误“convert: error while loading shared libraries: libMagickCore.so.3: cannot open shared object file: No such file or directory”
如果不幸出现可以使用命令

ldconfig /usr/

2、安装imagick(PHP的扩展)
和上面一样,先下载编译包,最新的包可以在下面的地址中找到http://pecl.php.net/package/imagick
我们选择imagick-3.0.1.tgz,建议尽量选择正式版本

wget http://pecl.php.net/get/imagick-3.0.1.tgz
tar -zxvf imagick-3.0.1.tgz
cd imagick-3.0.1/
export PKG_CONFIG_PATH=/usr/local/imagemagick/lib/pkgconfig
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick
make && make install

3、配置php.ini
需要在php.ini中添加imagick扩展

vim /usr/local/php/etc/php.ini

然后添加:

extension = "imagick.so"

保存并退出

4、重启PHP-FPM或Apache

/etc/init.d/php-fpm restart
/etc/init.d/httpd -k restart

一般情况通过上述几部就能搞定,如果遇到问题可以Google下解决掉。
LNMP.org已经提供现成的sh,可以直接用