Linux中PHP安装与配置详解(2)

4.5 安装PHP
1) 创建用户php-fpm使用的www用户。
# groupadd  www  #添加www组   
 # useradd -g  www www -s /bin/false  #创建nginx运行账户www并加入到www组,不允许www用户直接登录系统

2) 创建安装目录,缓存目录,日志目录
a) 安装目录
# mkdir -p /usr/local/php5 
 b) 缓存目录
# mkdir -p /tmp/phis 
 # chown www:www /tmp/phis -R
 c)session目录,如果是负载均衡的多台服务器,需要共享session,session需要放入memcach中
# mkdir -p /tmp/session
 # chown www:www /tmp/session -R
 d)创建日志目录
# mkdir -p /data0/logs/php
 # chown www:www /data0/logs/php -R

3)解压
 确保已经安装mysql-devel  且生成/usr/lib64/mysql
 64位系统中 libmysqlclient 默认安装到了 /usr/lib64/mysql/ 目录下
 而php编译时是去/usr/lib目录下查找 因此要创建软连接

# ln -s /usr/lib64/mysql/libmysqlclient* /usr/lib
 # /sbin/ldconfig
 # cd /usr/local/src/php
 # tar -xvpf php-5.2.13.tar.bz2

4)补丁
# gzip -cd php-5.2.13-fpm-0.5.13.diff.gz | patch -d php-5.2.13 -p1

5) 配置
# cd php-5.2.13/
 # ./configure  --prefix=/usr/local/php5 \
 --with-config-file-path=/usr/local/php5/etc \
 --with-mysql=/usr/include/mysql \
 --with-mysqli=/usr/lib64/mysql/mysql_config  \
 --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir \
 --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml \
 --disable-rpath --enable-discard-path --enable-safe-mode \
 --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization \
 --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi  \
 --enable-fpm \
 --enable-force-cgi-redirect  --enable-mbstring \
 --with-mcrypt  --with-gd  --enable-gd-native-ttf \
 --with-openssl  --with-mhash  --enable-pcntl  --enable-sockets \
 --with-ldap  --with-ldap-sasl  --with-xmlrpc  --enable-zip  --enable-soap \
 --without-pear  --with-pdo-mysql

6)编译
make ZEND_EXTRA_LIBS='-liconv'

7)安装

make install

4.6 安装PHP扩展模块
1)安装memcache
 cd /usr/local/src/php
 tar zxvf memcache-2.2.5.tgz
 cd memcache-2.2.5/
 /usr/local/php5/bin/phpize
 ./configure --with-php-config=/usr/local/php5/bin/php-config
 make
 make install
 cd ../

4.7 配置PHP
方式一:手动配置
1)复制php配置文件到安装目录
 # cp /usr/local/src/php/php-5.2.13/php.ini-dist /usr/local/php5/etc/php.ini

2)删除系统自带配置文件     
 # rm -rf /etc/php.ini

3)添加软链接       
 # ln -s /usr/local/php5/etc/php.ini  /etc/php.ini

4)编辑
vi  /usr/local/php5/etc/php-fpm.conf   
 user = www    #设置php-fpm运行账号为www   
 group = www  #设置php-fpm运行组为www   
 pid = run/php-fpm.pid    #取消前面的分号   

#设置 php-fpm开机启动,拷贝php-fpm到启动目录   
 # Cp /usr/local/php5/sbin/php-fpm  /etc/rc.d/init.d/php-fpm
 #添加执行权限
chmod +x /etc/rc.d/init.d/php-fpm
 #设置开机启动     
chkconfig php-fpm on     

#编辑配置文件 
vi /usr/local/php5/etc/php.ini   
找到:disable_functions =   
修改为:
disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname   
 #列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。   
找到:;date.timezone =   
修改为:date.timezone = PRC  #设置时区   
找到:expose_php = On   
修改为:expose_php = OFF  #禁止显示php版本的信息   
PS:在编译PHP的过程中可能会报UNDEFINED REFERENCE TO `LIBICONV_OPEN 无法编译PHP LIBICONV错误.

#配置php命令

ln -s /usr/local/php5/bin/php /usr/bin/

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/e17ff3fb8f8a055519853f1c307ecfe4.html