文件管理系统-PFN安装配置

PFN是一个开源的文件管理系统,应该说某种状况下有一定用处.今天将以前的东西重新翻了出来,整理一下.

这里附带了apache和mysql和php的一些安装及配置过程,熟悉的可pass掉,直接拖到最后.

下载:http://pfn.sourceforge.net/  大概不到1M的样子.  相应的语言包可以在官网上的demo上try_it 进去选择下载,中文版本的同学用GB2312(时隔一年多,一看最新版本还是2.3.3..有点杯具)

 

前置环境: apache php mysql  fedora 12 或者redhat AS4

一. apache下载: http://www.apache.org/  进入download下httpd目录下载最新的apache 这里以2.2.17为例

httpd-2.2.17.tar.gz   放在/home/src下

tar –zxvf http-2.2.17.tar.gz

cd http-2.2.17 

#./configure --prefix=/usr/local/apache --enable-module=so

/**这里是安装路径和告诉apache开启加载共享模块的功能****/

#make

#make install

启动测试: #/usr/local/apache/bin/apachectl start

/**如果不能启动成功的话请检查/etc/selinux/config项,查看selinux的设置情况,将其关闭

  关闭selinux方法两种:

    1.将SELINUX="disable",reboot

    2.setenforce 0 设置SELinux 成为permissive模式

    (或者直接setenforce 1 设置SELinux 成为enforcing模式)

 

加入启动项: vi /etc/rc.d/rc.local

增加行: /usr/local/apache/bin/apachectl start

**/

 

二.安装php(包括其插件)

插件安装

1. libxml2

 /**

官网http://xmlsoft.org/  在download里ftp或者其它下载里可以找到,这里以libxml2-2.6.26为例

它是一个xml C语言版的解析器,支持的编码多,功能比较强.(虽然apache自带有xerces)

**/

#tar –zxvf libxml2-2.6.26

#cd libxml2-2.6.26

#/configure –-prefix=/usr/local/libxml2

#make

#make install

 

2. openssl

/**

官网: http://www.openssl.org/ 在source里可以下载到,这里以openssl-0.9.8.e为例

 SSL是Secure Socket Layer(安全套接层协议)的缩写,可以在Internet上提供秘密性传输

利用OpenSSL就可以给Apache配置SSL安全链接的,也就是使用https://方式进行访问,在apache和php的环境配置中这个东东是常用到的.

**/

#tar –zxvf openssl-0.9.8.e.tar.gz

#cd openssl-0.9.8.e.tar.gz

#./config --prefix=/usr/local/openssl

#make

#make install

 

3. zlib

/**

官网 http://www.zlib.net/  下载tar.gz包 这里以zlib-1.2.3-23.tar.gz为例

zlib是提供数据压缩用的函式库,用于数据的压缩和解压,比较在网络数据的传输方面,很多应用程序都直接或者间接的用到它,apache和php也不例外

这个东东大部分linux系统中已经自带了,不要强制卸载,否则会很杯具.

**/

可以查看系统中是否有相关的安装包

#rpm –qa |grep –i zlib   ---当然也可以重复着装.

#tar zlib-1.2.3.23.tar.gz

#cd zlib-1.2.3.23

#./configure --prefix=/usr/local/zlib

#make

#make install

 

4. libpng

/**

官网: http://www.libpng.org/pub/png/libpng.html  这里以libpng-1.2.12.tar.gz为例

它是一个png图像库,主要由GD调用,用来生成PNG格式的图像,它可以调用上面提到的zlib库来进行图像的压缩.算是可选库,但还是装上,以后可能用得到

**/

#tar libpng-1.2.12.tar.gz

#cd libpng-1.2.12

#cp scripts/makefile.std Makefile

/**这里的Makefile是直接从scripts里拷贝一个,而不是用configure生成 **/

#make

#make install

 

5. freetype

/**

官网: http://freetype.sourceforge.net/index2.html  这里以freetype-2.2.1.tar.gz为例

与图像及字体相关的库,主要由GD调用,提供TureType支持.

**/

#tar freetype-2.2.1.tar.gz

#cd freetype-2.2.1

#./configure --prefix=/usr/local/freetype

#make

#make install

 

6. jpeg

/**

官网: http://www.ijg.org/   以jpegsrc.v8b.tar.gz为例  (v6b版本的必须要自己手动建立目录的)

图像库,由GD调用生成jpeg图像

**/

#tar jpegsrc.v8b.tar.gz

#cd jpegsrc.v8b

#./configure --prefix=/usr/local/jpeg --enable-shared --enable-static

/**这里带这两个参数是打开共享库和静态库,以便可以正常使用**/

#make

#make install

 

7. GD

/**

官网: http://www.libgd.org/Main_Page  这里以gd-2.0.35.tar.gz为例

gd库是php处理图形的扩展库,gd库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片。

 **/

#tar gd-2.0.35.tar.gz

#cd gd-2.0.35.tar.gz

#./configure --prefix=/usr/local/jpeg --with-jpeg=/usr/local/jpeg

--with-freetype=/usr/local/freetype --with-png --with-zlib=/usr/local/zlib

#make

#make install

 

8. mysql安装

到这里为止,相关php用到的插件已经装完了,此时最好先装数据库,否则在装php时还需要另外重新configure一次.

因为PFN文件系统用到的是MySQL数据库,这里就以Mysql为例.

官网: http://www.mysql.com/  例:在download里下载mysql-community-server 5.1.52

一般选择Generic linux就好了.一共有四个包,一个server和client必装.还有个devel和shared包最好也装上.安装之前先检查系统里是否有自带的mysql.

查询#rpm –qa |grep –i mysql 

卸载#rpm –e MySQL-XXXX  可用加上--nodeps进行强制卸载

安装:

#rpm –ivh MySQL-server-5.1.52-1.glibc23.i386.rpm

#rpm –ivh MySQL-client-5.1.52-1.glibc23.i386.rpm

#rpm –ivh MySQL-devel-5.1.52-1.glibc23.i386.rpm

#rpm –ivh MySQL-shared-5.1.52-1.glibc23.i386.rpm

附错误:Starting MySQL. ERROR! Manager of pid-file quit without updating file.则参照上面关selinux   如setenforce 0

 

启动方法(两种都可以)

/etc/rc.d/init.d/mysql start

service mysql start

启动后可以用netstat –ant |grep 3306来查看mysql服务的端口是否已经打开

重启为restart

mysql以rpm包安装后的目录结构如下:

/var/lib/mysql              数据库文件,每一个库对应一个文件夹,一张表对应三个文件

/usr/share/mysql        配置文件放的地方,但都是demo,可以复制一个如 到/etc/下面命名为my.cnf

/usr/bin                       相关命令及工具所在路径,这个位置已经在$PATH里,可以在任意位置启动

/etc/rc.d/init.d             mysql的启动脚本名为:mysql

关闭方法:

/etc/rc.d/init.d/mysql stop 或者shutdown

mysqladmin shutdown

 

连接方法:

在mydql命令路径下(这里实际已经加到了环境变量里,任何路径下可运行)

mysql –uroot –p  提示输入密码.  离开用exit  或者\q\\

 

外部连接,比如用navicate

用mysql的root用户登入后

grant all on *.* to 'test'@'%'        //创建一个test账号,有所有权限,没密码,可以用任何机器外连

use mysql;        //换到系统库里.
update user set Password=password('qatest') where User='test';   //修改密码
FLUSH PRIVILEGES;        //刷新后即可生效

exit

/usr/bin/mysqladmin -u root password qatest   //顺便把root的密码也给改了

 

安装完成了mysql以后,开始php的安装,主要是配置部分

 

#tar -zxvf php-5.1.6.tar.gz
#cd php-5.1.6
#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-gd=/usr/local/gd --enable-gd --with-jpeg-dir=/usr/local/jpeg --with-png --with-ttf --with-zlib=/usr/local/zlib --with-freetype-dir=/usr/local/freetype --enable-magic-quotes --with-mysql=/usr/ --with-mbstring --enable-mbstring --with-openssl=/usr/local/openssl  --with-pear=/usr/local/php/pear --with-xml=/usr/local/lib  --with-tsrm-pthreads

#make
#make install
#cp php.ini-dist /usr/local/lib/php.ini

 

测试:  编辑httpd.conf文件

修改

DocumentRoot:”/home/html”  将其对应该的文件权限也作此修改

Listen 本机IP:80

ServerName:本机IP:80

LoadModule php5_module       modules/libphp5.so

AddType application/x-httpd-php .php

修改完成后要重启apache

此至,...基础环境算是安装完了.

 

最后开始安装PFN了.

mv pfn2.3.3.zip /home/html/pfn.zip

#unzip pfn.zip

#/etc/init.d/iptables stop   //在本地虚拟机上测试的

到此处就可以了,打开本地IE,打开

1. 安装

http://192.168.50.128/pfn/instalar/index.php  选择第一项语言为english

按照提示,将pfn/data/conf 下的default-example.inc.php 重命名为default.inc.php

cd /home/html/pfn/data/conf/

mv default-example.inc.php default.inc.php

刷新页面,进入第二步

按提示将data/servidor/和data/conf/文件夹的目录权限设置为777

cd /home/html/pfn/data

chmod 777 servidor conf

刷新页面,进入第三步

按照提示将mysql的配置文件/etc/my.cnf里的设置作如下修改:

upload_max_filesize:20M  实际上这里是你上传文件允许的大小.

memory_limit:将内存改的大一些就OK了

记得改完要重启apache

刷新页面,第四步

选择字符集,如果是用英文默认用utf-8 unicode就行了,中文的话用GB2312这个选项.,

server保持默认的localhost就行了(也可以填写IP)

datebasename写pfn  要先进入到mysql里进行   create database pfn;

user: root  password: 123456   这是连接数据库的用户名和密码,请自行设置

表名前缀,自行设置,这里用默认的就行了

admin-user这里是设置pfn系统的超级管理员用户的

commonname随便写个

user:root   password: 123456   这里好像不让空密码连接的

改密码: mysqladmin –u root –p password 123456  因为默认的密码是空的.所以-p参数后面空着就行了,打完这个命令直接按回车就OK了  记得改完清理history

e-mail随便写

 

main root

name随便写绝对路径要写apache根目录下的,文件夹必须是存在的

webpath默认就好了

创建成功.finish

 

最后还需要delete or rename the "instalar 

cd /home/html/pfn/

mv instalar rename_instalar

这样访问http://192.168.50.128/pfn/index.php就成功了

界面为英文的,在在官网上的demo上try_it 进去选择下载zh-CN_gb2312.zip

中文编码的问题:

解压至/home/html/pfn/data/idiomas下 ,比如建个新文件夹叫zh

unzip zh-CN_gb2312.zip

在/home/html/pfn/data/conf/basicas.inc.php将language一项设置为zh即可(默认是en)

刷新页面,变成了中文界面

 

PS可能遇到的问题:

1.php等基础环境之前就已经装好了,重编译时出错,提示:

make: *** [ext/mysqli/mysqli.lo] Error 1

解决方法:

进到php安装目录下:

make clean

./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-gd=/usr/local/gd --enable-gd --with-jpeg-dir=/usr/local/jpeg --with-png --with-ttf --with-zlib --with-freetype-dir=/usr/local/freetype --enable-magic-quotes --with-pgsql=/usr/local/pgsql --with-mbstring --enable-mbstring --with-openssl=/usr/local/ssl  --with-pear=/usr/local/php/pear --with-xml=/usr/local/lib  --with-tsrm-pthreads  --with-mysql=/usr

make && make install

如果再不行,则

echo "/usr/lib/mysql" >> /etc/ld.so.conf
ldconfig

后再执行.  成功后重启apache

 

2.如果你用的是比较新版本的mysql,如5.5.11等,会遇到一个非常纠结的问题.在第4步创建数据库时怎么也不成功..(找这原因浪费两小时,简直要泪奔)

原因: mysql版本不兼容,要么去mysql网站下载一下兼容以前语法的包

要么这么个解决:

PFN\pfn-2.3.3\instalar\mysql 下的所有sql文件,将所有

TYPE=MyISAM;  替换成:

ENGINE=MyISAM;

 

OK,看看装好后的效果:

文件管理系统-PFN安装配置_第1张图片

 -----------------------------

刚刚炒冷饭又装了一次.

出错the query has generated an error phpfilenavigator参考上面的错误2

然后居然 Call to undefined function session_register()..

cd ..pfn/
find . -name '*.php' |xargs grep 'session_register';
sed -i "s/session_register('sPFN')/$_session['sPFN']/g" `grep session_register\(\'sPFN\'\) -rl .`
sed -i "s/session_unregister('sPFN')/#session_unregister('sPFN')/g" `grep session_unregister\(\'sPFN\'\) -rl .`

还个有文件报错,直接注释掉那行就行了

 

下载限制
就目前版本(PHPfileNavigator v2.3.3 )默认情况下,安装好后是不能下载的,需要进行如下设置才能提供下载:
编辑data\conf\default.inc.php
Find:
'descargar' => false, // Download
change to:
'descargar' => true, // Download

同时下载多个文件的限制
默认情况下,系统没有启用文件夹打包功能,但可以通过设置参数,将整个文件夹打包成zip,然后下载,可以通过如下更改达到:
'multiple_descargar' => true, // Download multiple files at once默认是false.

下载了一个中文包,

vi .....pfn/data/conf/basicas.inc.php
将"idioma" => 'zh-CN' ,然后保存就OK了.

但这个中文包是gb2312的,而pfn默认是utf-8的  那么用比如notepad++将中文包中的几个文件转为utf-8无BOM的形式,再放上去可以解决这个问题。

 大文件上传失败: 在php.ini中:

upload_max_filesize = 5000M
post_max_size = 5000M

在nginx.conf中: client_max_body_size 5000m; 重启nginx

你可能感兴趣的:(配置)