• Linux 下的php,nginx,mysql的安装


    1. yum -y install wget make vim install gcc gcc-c++ ncurses ncurses-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers pcre pcre-devel  zlip zlip-devel  

    新建软件安装目录

    1. mkdir /usr/local/webserver  

    php依赖库安装

    libxml2(包含库和实用工具用于解析XML文件)

    1. tar zxvf libxml2-2.9.0.tar.gz -C /usr/local/webserver/  
    2. cd /usr/local/webserver/libxml2-2.9.0  
    3. ./configure  
    4. make&&make install  

    libmcrypt(加密算法扩展库支持DES, 3DES, RIJNDAEL, Twofish, IDEA, GOST, CAST-256, ARCFOUR, SERPENT, SAFER+等算法)

    1. tar zxvf libmcrypt-2.5.8.tar.gz -C /usr/local/webserver/  
    2. cd /usr/local/webserver/libmcrypt-2.5.8  
    3. ./configure  
    4. make && make install  

    nginx安装

    1. tar zxvf nginx-1.5.9.tar.gz -C /usr/local/webserver/  
    2. mv /usr/local/webserver/nginx-1.5.9  /usr/local/webserver/nginx  
    3. cd /usr/local/webserver/nginx  
    4. ./configure  
    5. make && make install  
    1. vi /etc/init.d/nginx  
    1. #!/bin/sh  
    2. #  
    3. # nginx - this script starts and stops the nginx daemin  
    4. #  
    5. # chkconfig:   - 85 15  
    6. # description:  Nginx is an HTTP(S) server, HTTP(S) reverse   
    7. #               proxy and IMAP/POP3 proxy server  
    8. # processname: nginx  
    9. # config:      /usr/local/nginx/conf/nginx.conf  
    10. # pidfile:     /usr/local/nginx/logs/nginx.pid  
    11.   
    12. # Source function library.  
    13. . /etc/rc.d/init.d/functions  
    14.   
    15. # Source networking configuration.  
    16. . /etc/sysconfig/network  
    17.   
    18. # Check that networking is up.  
    19. [ "$NETWORKING" = "no" ] && exit 0  
    20.   
    21. nginx="/usr/local/nginx/sbin/nginx"  
    22. prog=$(basename $nginx)  
    23.   
    24. NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"  
    25.   
    26. lockfile=/var/lock/subsys/nginx  
    27.   
    28. start() {  
    29.     [ -x $nginx ] || exit 5  
    30.     [ -f $NGINX_CONF_FILE ] || exit 6  
    31.     echo -n $"Starting $prog: "  
    32.     daemon $nginx -c $NGINX_CONF_FILE  
    33.     retval=$?  
    34.     echo  
    35.     [ $retval -eq 0 ] && touch $lockfile  
    36.     return $retval  
    37. }  
    38.   
    39. stop() {  
    40.     echo -n $"Stopping $prog: "  
    41.     killproc $prog -QUIT  
    42.     retval=$?  
    43.     echo  
    44.     [ $retval -eq 0 ] && rm -f $lockfile  
    45.     return $retval  
    46. }  
    47.   
    48. restart() {  
    49.     configtest || return $?  
    50.     stop  
    51.     start  
    52. }  
    53.   
    54. reload() {  
    55.     configtest || return $?  
    56.     echo -n $"Reloading $prog: "  
    57.     killproc $nginx -HUP  
    58.     RETVAL=$?  
    59.     echo  
    60. }  
    61.   
    62. force_reload() {  
    63.     restart  
    64. }  
    65.   
    66. configtest() {  
    67.   $nginx -t -c $NGINX_CONF_FILE  
    68. }  
    69.   
    70. rh_status() {  
    71.     status $prog  
    72. }  
    73.   
    74. rh_status_q() {  
    75.     rh_status >/dev/null 2>&1  
    76. }  
    77.   
    78. case "$1" in  
    79.     start)  
    80.         rh_status_q && exit 0  
    81.         $1  
    82.         ;;  
    83.     stop)  
    84.         rh_status_q || exit 0  
    85.         $1  
    86.         ;;  
    87.     restart|configtest)  
    88.         $1  
    89.         ;;  
    90.     reload)  
    91.         rh_status_q || exit 7  
    92.         $1  
    93.         ;;  
    94.     force-reload)  
    95.         force_reload  
    96.         ;;  
    97.     status)  
    98.         rh_status  
    99.         ;;  
    100.     condrestart|try-restart)  
    101.         rh_status_q || exit 0  
    102.             ;;  
    103.     *)  
    104.         echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"  
    105.         exit 2  
    106. esac  


    修改nginx脚本权限

    1. chmod +x /etc/init.d/nginx  


    添加到系统服务

    1. /sbin/chkconfig nginx on  


    mysql安装

    1. groupadd mysql   
    2. useradd -r -g mysql mysql   
    3. tar zxvf mysql-5.6.16-linux-glibc2.5-x86_64.tar.gz -C /usr/local/webserver/   
    4. mv /usr/local/webserver/mysql-5.6.16-linux-glibc2.5-x86_64 /usr/local/webserver/mysql   
    5. ## ln -s /usr/local/webserver/mysql-5.6.16-linux-glibc2.5-x86_64 /usr/local/webserver/mysql  
    6. cd /usr/local/webserver/mysql/  
    7. chown -R mysql .   
    8. chgrp -R mysql .   
    9. scripts/mysql_install_db --user=mysql   
    10. chown -R root .    
    11. chown -R mysql data    
    1. cp support-files/my-default.cnf /etc/my.cnf  
    2. bin/mysqld_safe --user=mysql &   

    修改mysql.server脚本

    1. vi support-files/mysql.server  
    1. basedir=  
    2. datadir=  
    3. 改为  
    4. basedir=/usr/local/webserver/mysql  
    5. datadir=/usr/local/webserver/mysql/data  


    配置启动脚本

    1. cp support-files/mysql.server /etc/init.d/mysqld  


    添加到环境变量

    1. vi ~/.bash_profile  
    1. PATH=$PATH:$HOME/bin:/usr/local/webserver/mysql/bin  


    php安装

    gd库安装

    1. tar zxvf gd-2.0.33.tar.gz  
    2. cd gd-2.0.33  
    3. ./configure --prefix=/usr/local/webserver/gd2/  
    4. make && make install  
    1. tar zxvf php-5.3.28.tar.gz -C /usr/local/webserver/  
    2. mv /usr/local/webserver/php-5.3.28/ /usr/local/webserver/php  
    3. cd /usr/local/webserver/php  
    4. ./configure --enable-fpm --with-mysql=/usr/local/webserver/mysql/ --with-mysqli=/usr/local/webserver/mysql/bin/mysql_config --with-config-file-path=/usr/local/webserver/php/ --with-openssl --enable-mbstring --with-zlib --enable-xml --with-gd=/usr/local/webserver/gd2/ --with-jpeg-dir --enable-bcmath --with-mcrypt --with-iconv --enable-pcntl --enable-shmop --enable-simplexml --enable-ftp  
    5. make && make install  
    1. cp php.ini-development /usr/local/webserver/php/php.ini  


    配置php.ini

    1. vim php.ini  
    1. ;date.timezone =  
    2. 改为 date.timezone = prc  

    配置nginx.conf

    1. mv /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf_bak  
    2. vim /usr/local/nginx/conf/nginx.conf  
    1. user  root root;  
    2. worker_processes  1;  
    3.   
    4. #error_log  logs/error.log;  
    5. #error_log  logs/error.log  notice;  
    6. #error_log  logs/error.log  info;  
    7.   
    8. #pid        logs/nginx.pid;  
    9.   
    10.   
    11. events {  
    12.     worker_connections  1024;  
    13. }  
    14.   
    15.   
    16. http {  
    17.     include       mime.types;  
    18.     default_type  application/octet-stream;  
    19.   
    20.     #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '  
    21.     #                  '$status $body_bytes_sent "$http_referer" '  
    22.     #                  '"$http_user_agent" "$http_x_forwarded_for"';  
    23.   
    24.     #access_log  logs/access.log  main;  
    25.   
    26.     sendfile        on;  
    27.     #tcp_nopush     on;  
    28.   
    29.     #keepalive_timeout  0;  
    30.     keepalive_timeout  65;  
    31.   
    32.   
    33.     server {  
    34.         listen          80;  
    35.         server_name     192.168.51.33;  
    36.         root            /home/www;  
    37.   
    38.         autoindex on;  
    39.         autoindex_exact_size off;  
    40.         autoindex_localtime on;  
    41.   
    42.   
    43.     #配置站点伪静态(此处配置好之后,需要在ecstore/config/config.php中修改“define('WITH_REWRITE',true);”)  
    44.         if ($request_uri ~ (.+?.php)(|/.*)$ ){  
    45.             break;                                                                                                                                    
    46.         }  
    47.         if (!-e $request_filename) {  
    48.             rewrite ^/(.*)$ /index.php/$1 last;  
    49.         }  
    50.   
    51.   
    52.         location / {  
    53.             index  index.php index.html index.htm;  
    54.         }  
    55.         error_page   500 502 503 504  /50x.html;  
    56.         location = /50x.html {  
    57.             root   html;  
    58.         }  
    59.         location ~ .php {  
    60.             include        fastcgi_params;  
    61.             fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;  
    62.             #设置pathinfo  
    63.   
    64.             set $path_info "";  
    65.             set $real_script_name $fastcgi_script_name;  
    66.             if ($fastcgi_script_name ~ "^(.+?.php)(/.+)?$") {  
    67.                 set $script_name $1;  
    68.                 set $path_info $2;  
    69.             }  
    70.   
    71.             fastcgi_param SCRIPT_NAME $script_name;  
    72.             fastcgi_param PATH_INFO $path_info;  
    73.             fastcgi_pass   127.0.0.1:9000;  
    74.             fastcgi_index  index.php;  
    75.         }  
    76.     }  
    77.   
    78.   
    79.   
    80.         # deny access to .htaccess files, if Apache's document root  
    81.         # concurs with nginx's one  
    82.         #  
    83.         #location ~ /.ht {  
    84.         #    deny  all;  
    85.         #}  
    86.   
    87.   
    88.     # another virtual host using mix of IP-, name-, and port-based configuration  
    89.     #  
    90.     #server {  
    91.     #    listen       8000;  
    92.     #    listen       somename:8080;  
    93.     #    server_name  somename  alias  another.alias;  
    94.   
    95.     #    location / {  
    96.     #        root   html;  
    97.     #        index  index.html index.htm;  
    98.     #    }  
    99.     #}  
    100.   
    101.   
    102.     # HTTPS server  
    103.     #  
    104.     #server {  
    105.     #    listen       443;  
    106.     #    server_name  localhost;  
    107.   
    108.     #    ssl                  on;  
    109.     #    ssl_certificate      cert.pem;  
    110.     #    ssl_certificate_key  cert.key;  
    111.   
    112.     #    ssl_session_timeout  5m;  
    113.   
    114.     #    ssl_protocols  SSLv2 SSLv3 TLSv1;  
    115.     #    ssl_ciphers  HIGH:!aNULL:!MD5;  
    116.     #    ssl_prefer_server_ciphers   on;  
    117.   
    118.     #    location / {  
    119.     #        root   html;  
    120.     #        index  index.html index.htm;  
    121.     #    }  
    122.     #}  
    123.   
    124. }  


    配置php.ini

    1. vi /usr/local/webserver/php/php.ini  
    1. enable_dl = On  
    2. cgi.force_redirect = 0  
    3. cgi.fix_pathinfo=1  
    4. fastcgi.impersonate = 1  
    5. cgi.rfc2616_headers = 1  
    6. allow_url_fopen = On  


    配置php-fpm启动脚本

    1. vi /etc/init.d/php-fpm  
    1. #! /bin/sh  
    2.   
    3. ### BEGIN INIT INFO  
    4. # Provides:          php-fpm  
    5. # Required-Start:    $remote_fs $network  
    6. # Required-Stop:     $remote_fs $network  
    7. # Default-Start:     2 3 4 5  
    8. # Default-Stop:      0 1 6  
    9. # Short-Description: starts php-fpm  
    10. # Description:       starts the PHP FastCGI Process Manager daemon  
    11. ### END INIT INFO  
    12.   
    13. prefix=/usr/local/  
    14.   
    15. php_fpm_BIN=${prefix}/sbin/php-fpm  
    16. php_fpm_CONF=${prefix}/etc/php-fpm.conf  
    17. php_fpm_PID=${prefix}/var/run/php-fpm.pid  
    18.   
    19.   
    20. php_opts="--fpm-config $php_fpm_CONF"  
    21. php_pid="--pid $php_fpm_PID"  
    22.   
    23. wait_for_pid () {  
    24.         try=0  
    25.   
    26.         while test $try -lt 35 ; do  
    27.   
    28.                 case "$1" in  
    29.                         'created')  
    30.                         if [ -f "$2" ] ; then  
    31.                                 try=''  
    32.                                 break  
    33.                         fi  
    34.                         ;;  
    35.   
    36.                         'removed')  
    37.                         if [ ! -f "$2" ] ; then  
    38.                                 try=''  
    39.                                 break  
    40.                         fi  
    41.                         ;;  
    42.                 esac  
    43.   
    44.                 echo -n .  
    45.                 try=`expr $try + 1`  
    46.                 sleep 1  
    47.   
    48.         done  
    49.   
    50. }  
    51.   
    52. case "$1" in  
    53.         start)  
    54.                 echo -n "Starting php-fpm "  
    55.   
    56.                 $php_fpm_BIN $php_opts $php_pid  
    57.   
    58.                 if [ "$?" != 0 ] ; then  
    59.                         echo " failed"  
    60.                         exit 1  
    61.                 fi  
    62.   
    63.                 wait_for_pid created $php_fpm_PID  
    64.   
    65.                 if [ -n "$try" ] ; then  
    66.                         echo " failed"  
    67.                         exit 1  
    68.                 else  
    69.                         echo " done"  
    70.                 fi  
    71.         ;;  
    72.   
    73.         stop)  
    74.                 echo -n "Gracefully shutting down php-fpm "  
    75.   
    76.                 if [ ! -r $php_fpm_PID ] ; then  
    77.                         echo "warning, no pid file found - php-fpm is not running ?"  
    78.                         exit 1  
    79.                 fi  
    80.   
    81.                 kill -QUIT `cat $php_fpm_PID`  
    82.   
    83.                 wait_for_pid removed $php_fpm_PID  
    84.   
    85.                 if [ -n "$try" ] ; then  
    86.                         echo " failed. Use force-exit"  
    87.                         exit 1  
    88.                 else  
    89.                         echo " done"  
    90.                 fi  
    91.                       ;;  
    92.   
    93.         force-quit)  
    94.                 echo -n "Terminating php-fpm "  
    95.   
    96.                 if [ ! -r $php_fpm_PID ] ; then  
    97.                         echo "warning, no pid file found - php-fpm is not running ?"  
    98.                         exit 1  
    99.                 fi  
    100.   
    101.                 kill -TERM `cat $php_fpm_PID`  
    102.   
    103.                 wait_for_pid removed $php_fpm_PID  
    104.   
    105.                 if [ -n "$try" ] ; then  
    106.                         echo " failed"  
    107.                         exit 1  
    108.                 else  
    109.                         echo " done"  
    110.                 fi  
    111.         ;;  
    112.   
    113.         restart)  
    114.                 $0 stop  
    115.                 $0 start  
    116.         ;;  
    117.   
    118.         reload)  
    119.   
    120.                 echo -n "Reload service php-fpm "  
    121.   
    122.                 if [ ! -r $php_fpm_PID ] ; then  
    123.                         echo "warning, no pid file found - php-fpm is not running ?"  
    124.                         exit 1  
    125.                 fi  
    126.   
    127.                 kill -USR2 `cat $php_fpm_PID`  
    128.   
    129.                 echo " done"  
    130.         ;;  
    131.   
    132.         *)  
    133.                 echo "Usage: $0 {start|stop|force-quit|restart|reload}"  
    134.                 exit 1  
    135.         ;;  
    136.   
    137. esac  


    脚本执行权限

    1. cd /usr/local/etc && cp php-fpm.conf.default php-fpm.conf  
    2. chmod +x /etc/init.d/php-fpm  

    设置开机启动

    1. /sbin/chkconfig php-fpm on  


    /******下面是ecstore所需******/

    ZendGuard安装

    1. tar zxvf ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz -C /usr/local/webserver/  
    2. mv /usr/local/webserver/ZendGuardLoader-php-5.3-linux-glibc23-x86_64 /usr/local/webserver/ZendGuardLoader  
    3. cd /usr/local/webserver/ZendGuardLoader  
    4. cp php-5.3.x/ZendGuardLoader.so /usr/local/webserver/php/ext/  


    配置php.ini

    1. vi /usr/local/webserver/php/php.ini  
      1. [Zend Guard]  
      2. ;/usr/local/webserver/php/ext/ZendGuardLoader.so  这个是你当时指定的zend的目录  
      3. zend_extension=/usr/local/webserver/php/ext/ZendGuardLoader.so  
      4. zend_loader.enable=1  
      5. zend_loader.disable_licensing=0  
      6. zend_loader.obfuscation_level_support=3  
      7. zend_loader.license_path= 
  • 相关阅读:
    高级性能测试工程师进阶系列课程
    LoadRunner补丁Patch4下载
    【广州】LoadRunner性能测试实战训练
    LoadRunner测试国产神通数据库的方法
    深圳 LoadRunner性能测试技术培训
    高级软件测试工程师系列课程
    《.NET性能测试诊断与优化》教程
    《ASP.NET Site Performance Secrets》读书笔记
    AppDynamics监控JBOSS
    为企业免费提供性能测试指导(每月仅一个名额)
  • 原文地址:https://www.cnblogs.com/try-better-tomorrow/p/5099540.html
Copyright © 2020-2023  润新知