本空间内容都是自己的随记,转载请注明出处!

发布新日志

  • Excel需求导入TD

    2014-02-13 15:26:55

    很久以前的,整理一下
    此文档主要解决了excel文档导入到TD的问题,需求和子需求的层次关系也能导入.实TD的帮助也有写,不过是E文.我稍作修改,按自己的操作步骤给写出来,并对难以理解的地方做了解释.
  • TD权限简介

    2014-02-13 10:29:05

    很早写的关于TD权限的介绍,今天整理下,传上来备忘。见附件!
  • centos下php-fpm和nginx环境

    2014-02-13 09:47:41

    1、准备各种软件,php5.0以上的自导fpm,无需单独安装,只需要在编译的时候enable就行。编译安装php
    ./configure --prefix=/usr/local/php  --enable-fpm --with-mcrypt --with-zlib --enable-mbstring --disable-pdo --with-curl --disable-debug --with-pic --disable-rpath --enable-inline-optimization --with-bz2 --with-libxml-dir=/usr --enable-xml --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --with-mhash  --enable-zip --with-pcre-regex --with-mysql --with-gd --enable-gd-native-ttf --enable-gd-jis-conv --with-freetype-dir=/usr --with-openssl --with-jpeg-dir=/usr --with-png-dir=/usr
    2、编译安装nginx
    3、php扩展组件的单独安装,进入php安装程序的ext目录php-5.4.7/ext。
    举例
    cd pdo
    /usr/local/php/bin/phpize
    ./configure --with-php-config=/usr/local/php/bin/php-config --enable-pdo=shared
    make
    make install
    4、php.ini配置修改
    extension_dir="/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/"
    extension = "memcache.so"
    extension = "yaf.so"
    extension = "memcached.so"
    extension = "redis.so"
    extension = "pdo_mysql.so"
    yaf.environ="test"
    [yaf]
    yaf.use_spl_autoload = "On"
    5、nginx配置修改vi /usr/local/nginx/conf/nginx.conf
    server {
       listen       80;
       server_name  192.168.0.212 localhost;
       access_log  logs/access.log ;
       location / {
                root   /usr/local/nginx/html;
                index  index.html index.php;
                if ( !-e $request_filename ) {
                        rewrite ^/(.*)  /index.php last;
                }
        }
        location ~.php$ {
                root /usr/local/nginx/html;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
        }
    }
    ----上段是默认服务器ip访问
    server {
       listen       80;
       server_name  xx.xx.com;
       access_log  logs/xx.xx.com.log ;
       location / {
                root   /home/php/wwwFront/develop/application/www;
                index  index.html index.php;
                if ( !-e $request_filename ) {
                        rewrite ^/(.*)  /index.php last;
                }
        }
        location ~.php$ {
                root /home/php/bwwwFront/develop/application/www;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
        }
    }
    ----------虚拟主机配置
     
     
    6、启动php-fpm和nginx:shell
    #/bin/sh
    killall -9 php-fpm
    echo "stop php..."
    /usr/local/php/sbin/php-fpm
    echo "start php"
    killall -9 nginx
    echo "stop nginx"
    /usr/local/nginx/sbin/nginx
    echo "start nginx"
    7、测试。在/usr/local/nginx/html写一个php文件,index.php,查看php的相关信息
    <?php
    phpinfo();
    ?>
  • linux下mount

    2013-05-28 09:50:31

    mount -t nfs 192.168.0.233:/home/java/photo/data/store/ /data/store/ &
    把192.168.0.233的/home/java/photo/data/store/目录mount到本机的 /data/store/
    &表示后台运行
    机器重启后mount失效。可以加到自启动中
    vi /etc/rc.d/rc.local  加入mount的命令,保存即可
     
    233机器的配置
     vi /etc/exports
    /home/java/photo/data/store 192.168.0.*(rw,root_squash,sync)
    目录----允许挂载的ip----权限,用户

    192.168.0.*:允许0网段的ip挂载。可以直接*,则表示允许所有ip

    修改完后需要重启nfs服务。service nfs restart

     
  • linux下jboss错误提示

    2013-05-28 09:41:51

    1、too many open files
    错误分析:打开的文件数超过限制,linux的链接都是以文件方式打开的。
    查看连接数 ulimit -n
    解决办法:

        vi /etc/security/limits.conf,添加如下内容

    *        softnoproc  10240

    *        hardnoproc  10240

    *        softnofile  10240

    *        hardnofile  10240

     
    2、Caused by: javax.naming.ServiceUnavailableException: Failed to connect to server localhost:1099
    错误分析:
    1、连不上1099端口,大多数原因是因为启了多个jboss
    ps -aux 查看是否启了多个jboss
    2、cat /etc/hosts查看hosts文件中的127.0.0.1配置是否正确。那行可以直接注掉
  • centos下apache,php环境搭建

    2013-05-28 08:11:33

    注:安装过程:tar zxvf *****.tar.gz make  make install。以下省略了make的过程,
    1、安装apache
    httpd-2.0.63.tar.gz
    ./configure --prefix=/usr/local/apache2 --enable-module=alias  --enable-module=most --enable-module=vhost_alias --enable-shared=vhost_alias --enable-module=so --enable-shared=max --with-included-apr
    2、安装ncurses-5.6.tar.gz
    ./configure --prefix=/usr --with-share --without-debug
     
    3、安装zlib-1.2.3.tar.gz
    安装64bit的时候会报如下错误
    /usr/bin/ld: /usr/local/lib/libz.a(compress.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
    /usr/local/lib/libz.a: could not read symbols: Bad value
    collect2: ld returned 1 exit status
    make: *** [libphp5.la] 错误 1
    解决方法
    第一步:安装zlib基本库:yum install zlib*
    第二部:更新zlib库:yum update zlib*
    第三步:#cd zlib-xxx/ #./configure
    第四步:config后修改Makefile文件
    找到
    CFLAGS= -DUSE_MMAP
    修改为 CFLAGS=-O3 -DUSE_MMAP -fPIC
    第五步:make && make install
    其中第三步和第四步也可以由下面一步代替
    或者使用以下选项进行编译
    CFLAGS="-O3 -DUSE_MMAP -fPIC" ./configure
     
    4、安装libpng-1.2.41.tar.gz 
     ./configure --prefix=/usr/local/libpng
    vi Makefile
    找到CFLAGS= -g –O2后面加上 -fPIC (这里是关键)有时不需要
     make
     make install
    如果报如下错误
    configure: error: zlib not installed
    解决方法
    export LDFLAGS="-L/usr/local/zlib/lib"
    export CPPFLAGS="-I/usr/local/zlib/include"
     
    5、安装ttf ( ttf 是字体的支持 )
     tar zxvf freetype-2.3.5.tar.gz
     cd freetype-2.3.5
     ./configure --prefix=/usr/local/freetype
     
    6、安装JPEG6
     tar zxvf jpegsrc.v6b.tar.gz
     cd jpeg-6b/
     mkdir -pv /usr/local/libjpeg/{,bin,lib,include,man/man1,man1}
     ./configure --prefix=/usr/local/libjpeg --enable-shared --enable-static
     make
     make install
    64bit 安装时会报如下错,
    ./libtool --mode=compile gcc -O2  -I. -c ./jcapimin.c
    make: ./libtool: Command not found
    make: *** [jcapimin.lo] Error 127
    解决方法如下
    cp /usr/share/libtool/config.sub .
    cp /usr/share/libtool/config.guess .
    ./configure --enable-shared --enable-static
    make
    mkdir -p /usr/local/man/man1
    make install
     
    7、安装 libxml2
     tar zxvf libxml2-2.6.31.tar.gz
     cd libxml2-2.6.31
     ./configure --prefix=/usr/local/libxml2
     make
     make install
     cp xml2-config /usr/bin/
     
    8、安装 libmcrypt-2.5.7.tar.gz
     tar zxvf libmcrypt-2.5.7.tar.gz
     cd libmcrypt-2.5.7
     ./configure
     
    9、安装Fontconfig
     tar zxvf fontconfig-2.4.2.tar.gz
     cd fontconfig-2.4.2
     ./configure --prefix=/usr/local/fontconfig --with-freetype-config=/usr/local/freetype/bin/freetype-config  --with-expat-lib=/usr/lib64   
     make
     make install
     ( find / -type f -name 'pkg-config'
    /usr/bin/pkg-config
     export PKG_CONFIG=/usr/bin/pkg-config) (设置环境变量,路径为find的路径)
    如果是64bit的话,需要加上--with-expat-lib=/usr/lib64
     
    10、安装gettext
     tar zxvf gettext-1.05.tar.gz
     cd gettext-1.05
     perl Makefile.PL
     make
     make test
     make install
     
    11、安装GD库
    yum install -y libtool-ltdl*
     tar zxvf gd-2.0.35.tar.gz
     cd gd-2.0.35
     ./configure --prefix=/usr/local/libgd --with-png=/usr/local/libpng --with-fr --enable-m4_pattern_allow
    12、安装freetds
     tar zxvf freetds-0.82.tar.gz
     cd freetds-0.82
     ./configure --prefix=/usr/local/freetds --with-tdsver=7.2 --enable-msdblib
     make
     make install
     touch /usr/local/freetds/include/tds.h
     touch /usr/local/freetds/lib/libtds.a
     
    13、安装mhash
     tar zxvf mhash-0.9.9.tar.gz
     cd mhash-0.9.9
     ./configure
     
    14、安装libmcrypt
     wget http://downloads.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz?use_mirror=nchc
     tar zxvf libmcrypt-2.5.8.tar.gz
     cd libmcrypt-2.5.8
     ./configure --prefix=/usr/local/libmcrypt
     make
     make install
     ln -s /usr/local/libmcrypt/bin/libmcrypt-config /usr/local/bin/
     
    15、安装mcrypt
     wget http://downloads.sourceforge.net/project/mcrypt/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz?use_mirror=nchc
     tar zxvf mcrypt-2.6.8.tar.gz
     cd mcrypt-2.6.8
     LD_LIBRARY_PATH=/usr/local/lib ./configure --prefix=/usr/local/mcrypt
     
    16、检测openssl ,这个安装需要慎重,否则会运行不了
     openssl version
    OpenSSL 0.9.8e 23 Feb 2007(已经有,不用安装)
     
    17、编译安装MySQL 5.0.45
    /usr/sbin/groupadd mysql
    /usr/sbin/useradd -g mysql mysql
    tar zxvf mysql-5.0.45.tar.gz
    cd mysql-5.0.45
    ./configure --prefix=/usr/local/mysql/ --without-debug --with-unix-socket-path=/tmp/mysql.sock --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --enable-assembler --with-extra-charsets=gbk,gb2312,utf8 --with-pthread --enable-thread-safe-client
    make && make install
    chmod +w /usr/local/mysql
    chown -R mysql:mysql /usr/local/mysql
    cp support-files/my-medium.cnf /usr/local/mysql/my.cnf

      附:以下为附加步骤,如果你想在这台服务器上运行MySQL数据库,则执行以下两步。如果你只是希望让PHP支持MySQL扩展库,能够连接其他服务器上的MySQL数据库,那么,以下两步无需执行。
      ①、以mysql用户帐号的身份建立数据表:
    /usr/local/mysql/bin/mysql_install_db --defaults-file=/usr/local/mysql/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/mysql.pid --skip-locking --port=3306 --socket=/tmp/mysql.sock

      ②、启动MySQL(最后的&表示在后台运行)
    /bin/sh /usr/local/mysql/bin/mysqld_safe --defaults-file=/usr/local/mysql/my.cnf &
     
    18、安装PHP
     tar zxvf php-5.2.8.tar.gz
     cd php-5.2.8
     ./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-gd=/usr/local/libgd --enable-gd-native-ttf --with-ttf --enable-gd-jis-conv --with-freetype-dir=/usr/local/freetype --with-jpeg-dir=/usr/local/libjpeg --with-png-dir=/usr/local/libpng --with-libxml-dir=/usr/local/libxml2 --with-zlib-dir=/usr/local/zlib --enable-xml --enable-mbstring --enable-sockets --with-mssql=/usr/local/freetds/ --with-curl=/usr/local/curl --with-mcrypt=/usr/local/mcrypt/  --with-openssl
     make
     make install

     vi ~/.bashrc
    加入export PATH="$PATH:/usr/local/php5/bin"
     
     cp php.ini-dist  /usr/local/php5/lib/php.ini
      优化设置
    # vi /usr/local/php5/lib/php.ini
    ;default_charset = "iso-8859-1"
    在这行下面加一行
    default_charset = "gbk"
    max_execution_time = 30 ; // 改为600 (增加处理脚本的时间限制)
    max_input_time = 600 ; //最大输出时间600秒
    memory_limit = 8M ; //改为40M (这样才能发10M的附件)
    register_global =On
    post_max_size = 2M ; //php可接受的 post 方法大小 2M
    file_uploads = On ; //允许上载文件
    upload_max_filesize = 2M ; //最大上载文件2M
    session.auto_start = 1 ; //session自动启动

    编辑apache配置文件
    修改如下
    1、添加如下二行
    AddType application/x-httpd-php  .php
    AddType application/x-httpd-php-source  .phps
    2、定位至DirectoryIndex index.html
      修改为:
       DirectoryIndex  index.php  index.html
    19、安装php-soap
       cd php-5.2.17/ext/soap/
       /usr/local/php5/bin/phpize
       ./configure --with-php-config=/usr/local/php5/bin/php-config --enable-soap
       make
       make install
       vim /usr/local/php5/lib/php.ini
       查找extension_dir = "./"
       修改为
       extension_dir = "/usr/local/php5/lib/php/extensions/"
       并添加一行
       extension="no-debug-zts-20060613/soap.so"  (注意此处的路径,安装成功后会有提示)
       重启apache
     
    20、安装 memcache
      tar zxf memcache-2.2.5.tgz
      cd memcache-2.2.5
      /usr/local/php5/bin/phpize
       ./configure --enable-memcache=/usr/local/memcached --with-php-config=/usr/local/php5/bin/php-config --with-apxs2=/usr/local/apache2/bin/apxs
      make && make install
     
    vim /usr/local/php5/lib/php.ini
    extension_dir = "./"
    修改为
    extension_dir = "/usr/local/php5/lib/php/extensions/"
    /usr/local/php5/lib/php/extensions/no-debug-non-zts-20060613/
    并添加一行
    extension="no-debug-zts-20060613/memcache.so"(注意此处的路径,安装成功后会有提示)
     
    21、安装APC
    tar zxvf APC-3.1.6.tgz
    cd APC-3.1.6
    /usr/local/php5/bin/phpize
    ./configure --enable-apc --enable-apc-mmap --with-apxs=/usr/local/apache2/bin/apxs --with-php-config=/usr/local/php5/bin/php-config
    make
    make install
    安装完后会有类似这样的提示:
    Installing shared extensions:     /usr/local/php5/lib/php/extensions/no-debug-non-zts-20060613/
    把这个记住,然后修改php.ini
    vim /usr/local/php5/lib/php.ini
    在末尾添加
    extension=/usr/local/php5/lib/php/extensions/no-debug-non-zts-20060613/apc.so
    apc.enabled = 1
    apc.cache_by_default = on
    apc.shm_segments = 1
    apc.shm_size = 128
    apc.ttl = 36000
    apc.user_ttl = 36000
    apc.num_files_hint = 0
    apc.write_lock = On
    然后重启apache
     
    apc.cache_by_default = On
    是否默认对所有文件启用缓冲。 若设为Off并与以加号开头的apc.filters指令一起用,则文件仅在匹配过滤器时才被缓存
    apc.enabled = On
    是否启用APC,如果APC被静态编译进PHP又想禁用它,这是唯一的办法。
    pc.filters =
    一个以逗号分隔的POSIX扩展正则表达式列表。
    如果源文件名与任意一个模式匹配,则该文件不被缓存。
    注意,用来匹配的文件名是传递给include/require的文件名,而不是绝对路径。
    如果正则表达式的第一个字符是"+"则意味着任何匹配表达式的文件会被缓存,如果第一个字符是"-"则任何匹配项都不会被缓存。"-"是默认值,可以省略掉。
    apc.ttl = 0
    缓存条目在缓冲区中允许逗留的秒数。0 表示永不超时。建议值为7200~36000。设为 0 意味着缓冲区有可能被旧的缓存条目填满,从而导致无法缓存新条目。
    apc.user_ttl = 0
    类似于apc.ttl,只是针对每个用户而言,建议值为7200~36000。
    apc.gc_ttl = 3600
    缓存条目在垃圾回收表中能够存在的秒数
    此值提供了一个安全措施,即使一个服务器进程在执行缓存的源文件时崩溃, 中.国.站长站
    而且该源文件已经被修改,为旧版本分配的内存也不会被回收,直到达到此TTL值为止。设为零将禁用此特性。
    pc.max_file_size = 1M
    禁止大于此尺寸的文件被缓存。
    apc.num_files_hint = 1000
    Web服务器上可能被包含或被请求的不同源文件的大致数量(建议值为1024~4096)。
    如果你不能确定,则设为 0 ;此设定主要用于拥有数千个源文件的站点。
    apc.shm_segments = 1
    为编译器缓冲区分配的共享内存块数量(建议值为1)。
    如果APC耗尽了共享内存,并且已将apc.shm_size指令设为系统允许的最大值,你可以尝试增大此值。
    apc.shm_size = 30
    每个共享内存块的大小(以MB为单位,建议值为128~256)。
    有些系统(包括大多数BSD变种)默认的共享内存块大小非常少。
    apc.write_lock = On
    是否启用写入锁。
    在非常繁忙的服务器上,无论是启动服务还是修改文件,都可能由于多个进程企图同时缓存一个文件而导致竞争条件
    启用该指令可以避免竞争条件的出现。
    测试
    vi test.php    放到apache的目录下
    <?
    phpinfo();
    ?>
    22、/usr/local/php5/bin/phpize
    如果执行这个没有生成configure文件,则需要安装m4和autoconf。直接yum install即可
    安装过程中可能还需要的一些必要支持:gcc curl等,编译时会有提示的。
     
    23、apache module的单独安装(apache的配置文件里需要加载单独安装的module)
    cd /opt/apache/modules/mappers  (apache解压后的路径)
    /usr/local/apache2/bin/apxs -i -a -c mod_rewrite.c  (rewrite支持)
    /usr/local/apache2/bin/apxs -i -a -c mod_proxy.c proxy_util.c
    /usr/local/apache2/bin/apxs -i -a -c proxy_http.c proxy_util.c  (代理)
     
    24、安装svn客户端
    cd subversion-1.6.1
    ./configure --prefix=/usr/local/subversion
    svn1.6.1与apache2不兼容。
    解决办法是先停止apache,mv /usr/local/apache2 /usr/local/a ,然后再安装svn,svn安装成功后 mv /usr/local/a /usr/local/apache2 即可。
Open Toolbar