Nexus Project PHP Standard 1.5 bete 4简易安装说明

原帖地址

http://duangx.cn/1229.html

 

Nexus Project同时支持在Windows和Linux平台运行。为了获得更好的效率和安全性,建议使用Linux系统

运行环境要求:
1、HTTP服务器,如Apache
2、MySQL
3、PHP 5 (由于PEAR组件HTTP_Request不兼容PHP 5.3,目前不要使用PHP 5.3版本)
4、PEAR
5、memached
6、SMTP服务器软件,如Postfix

 

以下配置说明以在Linux发行版Ubuntu Server 904为例,假设代码保存位置为/home/xxx/www,即index.php文件的完整路径为/home/xxx/www/index.php。假设你的网站域名为www.mynexuspt.com
Apache配置:
修改Apache配置文件(通常名为Apache2.conf或httpd.conf。在Ubuntu Server 904,可修改/etc/apache2/sites-enabled/000-default):

  1. ErrorDocument 403 http://www.mynexuspt.com/403.php
  2. ErrorDocument 404 http://www.mynexuspt.com/404.php
  3. ErrorDocument 500 http://www.mynexuspt.com/500.php
  4. DocumentRoot “/home/xxx/www”
  5. <Directory /home/xxx/www>
  6. Options FollowSymLinks
  7. AllowOverride None
  8. Order allow,deny
  9. Allow from all
  10. </Directory>
  11. <DirectoryMatch “//.svn/”>
  12. AllowOverride None
  13. Order allow,deny
  14. Deny from all
  15. </DirectoryMatch>
  16. <Directory /home/xxx/www/_db>
  17. AllowOverride None
  18. Order allow,deny
  19. Deny from all
  20. </Directory>
  21. <Directory /home/xxx/www/config>
  22. AllowOverride None
  23. Order allow,deny
  24. Deny from all
  25. </Directory>
  26. <Directory /home/xxx/www/client>
  27. Options Indexes
  28. Order allow,deny
  29. Allow from all
  30. </Directory>
  31. <Directory /home/xxx/www/docs>
  32. Options Indexes
  33. Order allow,deny
  34. Allow from all
  35. </Directory>
  36. <Directory /home/xxx/www/lang>
  37. AllowOverride None
  38. Order allow,deny
  39. Deny from all
  40. </Directory>
  41. <Directory /home/xxx/www/cache>
  42. AllowOverride none
  43. Options -Indexes
  44. Order allow,deny
  45. Deny from all
  46. </Directory>

复制代码

注意一:将www.mynexuspt.com替换成你的网站域名,将/home/xxx/www替换成你的代码保存路径。
注意二:以上配置中,关于访问权限设置十分重要。尤其是/home/xxx/www/config这一路径的访问权限,如果不按以上设置,任何用户都可以通过浏览器看到你的配置文件内容,包括你的MySQL密码(在config/BASIC文件中)
PHP配置:
PHP要求gd,mbstring,memcache,mysql模块,这些模块在PHP默认安装中可能并不包含,需要另外安装。对于Ubuntu Server 904,可以通过以下命令安装这些模块:
sudo apt-get install php5-gd php5-memcache php5-mysql
修改PHP配置文件(通常名为php.ini,在Ubuntu Server 904,其路径为/etc/php5/apache2/php.ini):

  1. short_open_tag = On
  2. magic_quotes_gpc = Off
  3. magic_quotes_runtime = Off
  4. magic_quotes_sybase = Off
  5. memory_limit = 128M

复制代码

注意一:short_open_tag必须设为On,否则代码无法正常使用。
注意二:magic_quotes相关内容必须全部设为Off。PHP的magic quotes功能已确认有bug,对于Nexus Project来说将导致hash错误,在PHP 6中magic quotes功能已确认将被去除。
注意三:memory_limit设置过小(默认为16 M)容易导致在上传体积较大(如1 MB以上)的torrent文件时出现内存不足错误。

MySQL配置及创建/导入数据库:
修改MySQL配置文件(通常名为my.cnf,在Ubuntu Server 904,其路径为/etc/mysql/my.cnf):
max_connections = 1000
注意一:max_connections设置过小(默认为100)容易在网站访问量较大时出现MySQL连接出错。

MySQL数据库操作说明。此说明针对的读者是有一定MySQL管理经验的用户。假设你的MySQL服务器和HTTP服务器架设于同一主机(即localhost)、MySQL使用默认用户root且其密码是’nexusrocks’(不包含引号)。
1.输入以下命令进入MySQL命令行管理工具
mysql -u root -p nexusrocks -h localhost
注意:将’root’,’nexusrocks’,’localhost’分别替换成你的MySQL用户名、密码、主机地址
2.在MySQL命令行管理工具中运行以下命令创建一个新的数据库,假设数据库名为nexus:
CREATE DATABASE nexus;
3.在MySQL命令行管理工具导入Nexus Project的数据库文件:
SET NAMES utf8;
SOURCE /home/xxx/www/_db/dbstructure.sql;
注意一:将/home/xxx/www/_db/dbstructure.sql替换成你的实际dbstructure.sql文件路径。
4.退出MySQL命令行管理工具:
quit;

安装PEAR及HTTP_Request包:
Nexus Project需要使用PEAR的HTTP_Request包,因此需要安装PEAR(全称PHP Extension and Application Repository,网址http://pear.php.net)。在Windows平台,PHP一般会附带go-pear.bat脚本自动安装PEAR。在Linux平台中,可以安装PEAR的软件包,如在Ubuntu Server 904中可通过以下命令安装PEAR:
sudo apt-get install php-pear
在PEAR安装完成后,需要安装PEAR的HTTP_Request包,使用以下命令(Windows平台和Linux平台都是此命令):
pear install HTTP_Request
在本文撰写时HTTP_Request已经被标记为superseded,在安装时会有Warning提示,请不要理会。

memcached安装和运行:
memcached官方并不支持Windows平台,如在Windows平台,请使用memcached for Win32项目(网址为http://jehiah.cz/projects/memcached-win32/)。对于Linux平台,可以安装memcached的软件包,如在Ubuntu Server 904中可通过以下命令安装memcached:
sudo apt-get install memcached
对于Nexus Project,目前memcached必须在localhost运行,监听默认的端口11211,在Linux平台使用以下命令以daemon方式运行memcached:
memcached -d

Postfix安装:
如果你已经有一个SMTP服务器,你可以在Nexus Project的“站点设定->SMTP设定”中选择使用“外部”模式使用它。如果你没有外部的SMTP服务器,又需要开启Nexus Project发送邮件的功能(如验证用户注册邮箱),你必须在本地安装一个SMTP服务器软件。在Linux平台中,Postfix是个很好的选择。在Ubuntu Server 904中可通过以下命令安装Postfix:
sudo apt-get install postfix

重启MySQL和Apache服务
在修改软件配置文件后,需要重启相应服务才能使新配置生效。在Ubuntu Server 904中可通过以下命令重启Apache和MySQL:
sudo /etc/init.d/apache2 restart
sudo /etc/init.d/mysql restart
如果你不明白如何重启服务,可以重启操作系统。

Nexus Project设置:
在所有环境软件安装配置完成后,最后是Nexus Project代码的设置。很遗憾,目前Nexus Project没有提供安装程序,需要手动配置安装,方法如下:
Nexus Project代码的所有配置文件在config/目录中,为文本文件,可使用文本编辑器编辑(注意,请使用较高级的文本编辑器,一些简单的文本编辑器如notepad可能强制在文本文件中添加其它字符导致配置文件读取失败。在Windows平台可选择EditPlus,UltraEdit)。在架设中,你只需要修改config/BASIC文件。
config/中的配置文件使用的是bencode编码方式。其中数据规则如下:
<type>:<length>:<value>;
其中<type>为数据类型,如s表示是string(字符串);<length>为数字,表示<value>的字长(即字符数,如abcde的字长为5);<value>为值。
两个相邻的数据构成一个“配置名=配置值”的项目。以config/BASIC为例:
a:7:{s:10:”mysql_host”;s:9:”localhost”;s:10:”mysql_user”;s:4:”root”;s:10:”mysql_pass”;s:10:”

nexusrocks”;s:8:”mysql_db”;s:5:”nexus”;s:8:”SITENAME”;s:5:”Nexus”;s:7:”BASEURL”;s:17:”

www.mynexuspt.com”;s:12:”announce_url”;s:30:”www.mynexuspt.com/announce.php“;}
通过读取这个配置文件获取的配置内容为:

  1. mysql_host=localhost //MySQL主机
  2. mysql_user=root //MySQL用户名
  3. mysql_pass=nexusrocks //MySQL用户密码
  4. mysql_db=nexus //MySQL数据库名
  5. SITENAME=Nexus //网站名
  6. BASEURL=www.mynexuspt.com //网站地址(不包含http://)
  7. announce_url=www.mynexuspt.com/announce.php //网站Tracker地址(不包含http://)

复制代码

在网站架设时,必须填写正确的项目是mysql_host,mysql_user,mysql_pass,mysql_db和BASEURL。注意在修改这些项目的值时其对于的<length>也必须同步修改正确。如将mysql_pass修改为’nexusisgreat’,则配置文件中的
s:10:”mysql_pass”;s:10:”nexusrocks”;
部分要修改为
s:10:”mysql_pass”;s:12:”nexusisgreat”;
注意”nexusrocks”对应的<length>为10,修改为”nexusisgreat”后其<length>变成了12。
在修改完config/BASIC后,如果一切顺利,网站就可以访问。

设置文件权限:
在Linux平台,需要设置代码文件的访问权限,最简单是的方式是将所有文件权限开放。命令如下:
chmod -Rf 777 /home/xxx/www
注意:将/home/xxx/www替换成你的实际代码路径。

注册一个新用户并将其设为最高等级:
很遗憾,目前Nexus Project没有提供安装程序,对于最高权限的管理员,必须手动操作数据库来指定。方法如下:
1.使用正常方式在网站注册一个新用户,假设用户名为admin。
2.输入以下命令进入MySQL命令行管理工具:
mysql -u root -p nexusrocks -h localhost
注意:将’root’,’nexusrocks’,’localhost’分别替换成你的MySQL用户名、密码、主机地址。
2.在MySQL命令行管理工具输入以下命令:
USE nexus;
UPDATE users SET class=’16′ WHERE username=’admin’;
注意:将以上命令中的’nexus’替换成你的数据库名,将’admin’替换成你注册的用户名。
3.退出MySQL命令行管理工具:
quit;

常见错误:
1.Error! Cannot read configuration file XXX
你的代码配置文件(在config/中)配置错误,请仔细检查。
2.Fatal error: Class ‘Memcache’ not found in ….
PHP没有安装memcache模块。
3.Warning: Memcache::connect() [memcache.connect]: Can’t connect to localhost:11211, Connection refused (111) in /home/xxx/www/classes/class_cache.php on line 223
memached没有在运行。
4.Fatal error: require_once() [function.require]: Failed opening required ‘HTTP/Request.php’…
没有安装PEAR的HTTP_Request包或PHP配置参数include_path设置错误。

其实最重要的就是这几步:

  1. sudo apt-get install apache2
  2. sudo apt-get install mysql-server
  3. sudo apt-get install php5-gd
  4. sudo apt-get install php5-mysql
  5. sudo apt-get install phpmyadmin
  6. sudo apt-get install php-pear
  7. pear install HTTP_Request
  8. sudo apt-get install memcached
  9. sudo apt-get install php5-memcache
  10. memcached -d

复制代码

可能的话,打开root的权限

  1. sudo passwd root

复制代码

再输入新的密码

注销当前用户,切换至root,启用memcache

  1. memcached -u root -d

复制代码

www文件目录

下载 (49.64 KB)
2010-6-4 21:38

Windows下的Memcache安装
1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:/memcached
2. 在终端(也即cmd命令界面)下输入 ‘c:/memcached/memcached.exe -d install’ 安装
3. 再输入: ‘c:/memcached/memcached.exe -d start’ 启动。NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完毕了。
4.下载php_memcache.dll,请自己查找对应的php版本的文件
5. 在C:/winnt/php.ini 加入一行 ‘extension=php_memcache.dll’
6.重新启动Apache,然后查看一下phpinfo,如果有memcache,那么就说明安装成功!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值