chlw的原创笔记 https://bbs.21ic.com/?111401 [收藏] [复制] [RSS] 本人做单片机、ARM的软硬件件开发,有一定的奉献精神,会不定时的将开发中的收获整理以方便家,希望我的工作能对同行有所帮助。  本站大部分作品为原创,若要转载请注明站点和作者(EE.C)

日志

在RHEL5上,使subversion与zentaopms同进运行

已有 826 次阅读2012-5-30 14:27 |系统分类:产业话题| 研发管理工具

       


以此文纪念我那逝去的几个夜晚


EE.C 深圳


目标:


RHEL 5上的,使用subversionzentaopms同进运行


 


一些总结的重要内容:


安装subversion需要重新编译apache服务器,故在configure apache时,给出的参数即要有subversion所需,也要有php所需;


Subversionphp有共用的内容,我的禅道工具总是安装到最后一步时不能再进行,怀疑是subversion对其造成了影响(猜测,在我自己的服务器没有这个问题,很顺利的布置了subversion和禅道,事实上,subversion早就布置了。这两者应该没有先后顺序)在公司的服务器上,基本上每一步都有问题。


要能确认依赖的服务已能正常运行。


Apache 访问指定的URL时能出现期望的内容,系统上的apache与新安装的可双系统并存但同时只能运行一个,chkconfig –list看到的httpd是系统上的;如果希望使用新安装的,可用以下命令如 /usr/local/apach2/bin/apachctrl start,这样它是使用/usr/local/apach2/htdos下的index.html。录不rpm –e httpd时,可通过修改/etc/rc.d/init.d/httpd来启动/usr/local/apach2/bin/(设这是新安装的apache);


Mysql 服务能在指定的运行级别下启动,可能chkconfig –list |grep mysqld来查看,同时,确认使用的用户名和密码能访问指定的数据库,命令有mysqlshow –u user –h hostname –pmysql –u user –h hostname –p,进入mysql提示符以后connect试一下能否连上;


Php 5.4的版本可以用 php –ini来确认它使用的配置文件,要修改正确的文件使PHP加载pdo_mysql扩展;


Php –v可查看程序的版本,确认它是安装所需的;


Zentaopms下的文件要有正确的所有者和群组所有者才能正确执行,可以是rootdaemon(如果你的apache的执行者是daemon);


在不同机器上迁移相同版本的zentaopms系统时,用tar cjvf将源打包(zentaopms的整个目录、mysqlzentaopms使用的那个数据库),备份与删除目标,解包替换目标。这个过程确保mysql处于关掉状态。完成后启动apachemysql即可,注意操作完毕后zentaopms的属主,群组所有者才和所有者均为mysql,不是root或其它用户。


Zentaopms的升级比较简单,看清其说明就好,但要注意备份数据。


Subversion数据库的说明,当用svnadmin create repo新建了repo的数据仓库之后,它属于root,即使access文件是正确设置的,这个数据仓库也不一定能访问,这是因为权限的问题,一个解决方案是将repo在内的整个目录树对任何用户可读写,命令chmod 777 repo,但这样会带来安全问题,更好的解决办法是根据httpd.conf文件找出谁在执行apache,一个例子是:


User daemon


Group daemon


repousergroup改得和它一样就可以了。这样subversion的数据仓库会更安全。


一此主要的内容需要新的扩展时,不要急于从网上下载,找一下其发行包或单独发行的deps包,如果能找到,所需要的依赖都会有。


 


安装过程:


如果不出问题,安装会很快。


http的目录下,使用subversion的要求对http进行configure


          $ ./buildconf


          $ ./configure --enable-dav --enable-so --enable-maintainer-mode


回到php的目录下,安装php


[root@dsvr php-5.4.3]# ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql


Make


Make install


 


安装         pdo_mysql


[root@dsvr pdo_mysql]# whereis php-config


php-config: /usr/local/bin/php-config


[root@dsvr pdo_mysql]# whereis mysql_config


mysql_config: /usr/bin/mysql_config /usr/share/man/man1/mysql_config.1.gz


 


./configure --with-php-config=/usr/local/bin/php-config --with-mysql-config=/usr/bin/mysql_config


 


会生成类似以下的目录,目录下有文件 pdo_mysql.so


/usr/local/lib/php/extensions/no-debug-non-zts-20100525


/usr/local/lib/php/extensions/no-debug-non-zts-20100525/


php.ini的合适内容后加上:


extension=/usr/local/lib/php/extensions/no-debug-non-zts-20100525/pdo_mysql.so


确认PHP已加载了pdo_mysql扩展:


[root@dsvr php-5.4.3]# php -vm |grep mysql


mysql


mysqlnd


pdo_mysql


修改apache的配置文件httpd.conf,以下来自PHP的安装说明文件INSTALL,把配置内容之外的内容去掉入httpd.conf


    8. Tell  Apache to parse certain extensions as PHP. For example, let's


       have  Apache  parse  .php  files  as PHP. Instead of only using the


       Apache  AddType  directive,  we want to avoid potentially dangerous


       uploads  and  created  files  such  as  exploit.php.jpg  from being


       executed   as   PHP.   Using  this  example,  you  could  have  any


       extension(s)  parse as PHP by simply adding them. We'll add .php to


       demonstrate.


<FilesMatch \.php$>


    SetHandler application/x-httpd-php


</FilesMatch>


       Or,  if we wanted to allow .php, .php2, .php3, .php4, .php5, .php6,


       and  .phtml files to be executed as PHP, but nothing else, we'd use


       this:


<FilesMatch "\.ph(p[2-6]?|tml)$">


    SetHandler application/x-httpd-php


</FilesMatch>


       And  to  allow  .phps files to be handled by the php source filter,


       and displayed as syntax-highlighted source code, use this:


<FilesMatch "\.phps$">


    SetHandler application/x-httpd-php-source


</FilesMatch>


       mod_rewrite  may  be  used  To  allow any arbitrary .php file to be


       displayed  as  syntax-highlighted  source  code,  without having to


       rename or copy it to a .phps


 


启动或重启apache


安装zentaopms


编译subversion,安装subversion


修改你的httpd.conf文件,使之支持subversionsubversionINSTALL已经说得很清楚,参见其相关章节。


测试。


 


安装过程可能会出现一些非预期问题,上网查一下。


安装APACHE时出错,以下是来自网上的内容,与我的问题一样,由此解决了APACHE的安装问题。


 


  $ ./configure --with-apr=/usr/local/apache2 \


            --with-apr-util=/usr/local/apache2  ...


 


 


 


APACHE 安装出错 configure: error: Cannot use an external APR with the bundled APR-util


2007-07-22 11:16






configure: error: Cannot use an external APR with the bundled APR-util
根据错误信息进行解决
安装aprapr-util
http://apr.apache.org上面有这些源码包自己编译安装

tar xzvf apr-1.2.9.tar.gz
cd apr-1.2.9
./configure --prefix=/usr/local/apr
make
make install

tar xzvf apr-util-1.2.8.tar.gz
cd apr-util-1.2.8
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make
make install

接下来安装apache
./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all --enable-cgi --enable-rewrite --enable-deflate --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-mpm=worker
make
make install
安装将不再出错


 


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)