linux上apache2.2.6+php5.2.5+mysql5.0.22+Subversion 1.4.5安装

在Sles上配置成功
*********************************************
Mysql5.0.22安装
*********************************************
1 添加mysql用户
groupadd mysql
useradd -g mysql mysql

2 解压
在/usr/local/下
tar -xvzf mysql-5.0.22.tar.gz

3 配置编译
./configure --prefix=/usr/local/mysql \
--localstatedir=/usr/local/mysql/data \
--with-charset=gbk \

4 编译
make
5 安装
make install

shell> cp support-files/my-medium.cnf /etc/my.cnf

shell> cd /usr/local/mysql

shell> bin/mysql_install_db --user=mysql

shell> chown -R root .

shell> chown -R mysql var

shell> chgrp -R mysql .

shell> bin/mysqld_safe --user=mysql &

6 修改密码
/usr/local/mysql/bin/mysqladmin -u root password '123'

7 启动于停止
usr/local/mysql/bin/mysqld_safe --user=mysql &
usr/local/mysql/bin/mysqladmin -u root -p shutdown

8 加入到环境变量
ln -s /usr/local/mysql/bin/mysql /usr/local/bin
ln -s /usr/local/mysql/bin/mysqladmin /usr/local/bin
ln -s /usr/local/mysql/bin/mysqld_safe /usr/local/bin

### 让外部可以用root连接
###
ERROR 1130: Host 192.168.88.160 is not allowed to connect to this MySQL server

1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称”%”

mysql -u root -p

mysql>use mysql;

mysql>update user set host = ‘%’ where user =’root’;

mysql>flush privileges;

mysql>select ‘host’,'user’ from user where user=’root’;

现在就可以连接了!

2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

GRANT ALL PRIVILEGES ON *.* TO‘myuser’@'%’IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;

如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码

GRANT ALL PRIVILEGES ON *.* TO‘myuser’@'192.168.1.3′IDENTIFIED BY ‘mypassword’ WITH


###################官方文档############################
1. 为mysqld增加一个登录用户和组:

2. shell> groupadd mysql

3. shell> useradd -g mysql mysql

这些命令将增加MySQL组和MySQL用户。不同版本的Unix中,useradd和groupadd的语法可能会稍有不同。还可以称为adduser和addgroup。

你可能会将这些用户和组命名为mysql之外的名称。如果是这样,在下面的步骤中替换为相应的名称。

4. 挑选一个你想解开分发包的目录,进入该目录。在下面的例子中,我们将分发解包在“/usr/local”下(因此,下列说明假设你有权限在“/usr/local”中创建文件和目录,如果该目录被保护,你需要以root实施安装)。

5. shell> cd /usr/local

6. 从2.1.3节,“怎样获得MySQL”中列出的站点之一获得一个分发文件。对于一个给定的版本,所有平台的二进制分发版均从相同的MySQL源码分发版构建。

7. 解包分发版,将创建安装目录。然后生成到该目录的一个符号链接:

8. shell> gunzip < /path/to/mysql-VERSION-OS.tar.gz | tar xvf -

9. shell> ln -s full-path-to-mysql-VERSION-OS mysql

tar命令创建mysql-VERSION-OS目录。ln命令生成到该目录的一个符号链接。这让你更容易地把安装目录指定为/usr/local/mysql。

使用GNU tar,则不再需要gunzip。可以用下面的命令替换第一行来解包和提取分发版:

shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz

10.进入安装目录:

11. shell> cd mysql

你会在mysql目录下发现几个文件和子目录,对安装目的最重要的是“bin”和“scripts”子目录。

· bin

这个目录包含客户端程序和服务器,你应该把这个目录的完整路径加到PATH环境变量,以便shell能正确的找到MySQL程序。请参见附录F:环境变量。

· scripts

这个目录包含mysql_install_db脚本,用来初始化mysql数据库的 授权表,其中贮存了服务器访问允许。

12.如果还没有安装MySQL,必须创建MySQL授权表:

13. shell> scripts/mysql_install_db --user=mysql

如果你用root运行命令,应当使用--user选项。选项的值应与你在第一步为运行服务器所创建的登录账户相同。如果你用该用户登录来运行命令,可以省略--user选项。

创建或升级授权表后,需要手动重新启动服务器。

14.将程序二进制的所有权改为root,数据目录的所有权改为运行mysqld 的用户。如果位于安装目录(/usr/local/mysql)下,命令应为:

15. shell> chown -R root .

16. shell> chown -R mysql data

17. shell> chgrp -R mysql .

第一个命令将文件的所有属性改为root用户。第二个命令将数据目录的所有属性改为mysql用户。第三个命令将组属性改为mysql组。

18.如果你喜欢在引导机器时自动启动MySQL,可以拷贝support-files/mysql.server文件到系统有启动文件的地方。更多的信息可以在support-files/mysql.server脚本中和2.9.2.2节,“自动启动和停止MySQL”中找到。

19.如果安装了DBI和DBD::mysql Perl模块,可以使用bin/mysql_setpermission脚本增加新账户。关于说明,参见 2.13节,“Perl安装注意事项”。

20.如果你想使用mysqlaccess而在某个非标准的地点有MySQL分发版,你必须改变地点,在那儿mysqlaccess期望找到mysql客户端。编辑“bin/mysqlaccess”脚本,大约在第18行,寻找类似下面的行:

21. $MYSQL = '/usr/local/bin/mysql'; # path to mysql executable

改变路径以反映出mysql实际存储在你系统上的地点。如果不这样做,当运行mysqlaccess时,你将遇到一个broken pipe的错误。

在所有东西被解包并且安装以后,你应该初始化并且测试你的分发版。

可以用下列命令启动MySQL服务器:

shell> bin/mysqld_safe --user=mysql &
###################官方文档############################

**********************************************
Apache2.2.6安装
**********************************************
先独立安装apr1.2和apr-util1.2
./configure --prefix=/usr/local/apr
make
make install
./configure --with-apr=/usr/local/apr
make
make
install

1 解压
tar -xvzf httpd-2.2.6.tar.gz
cd httpd-2.2.6
2 编译配置 (如果要打开ssl和ldap就要现安装ssl-安装openssl和openssl-dev和ldap-安装openldap2和openldap2-dev)
./configure --prefix=/usr/local/apache2 \
--with-apr=/usr/local/apr/bin/apr-1-config \
--with-apr-util=/usr/local/apr/bin/apu-1-config \
--enable-modules=most \
--enable-mods-shared=most \
--enable-rewrite=shared \
--enable-speling=shared \
--enable-proxy \
--enable-proxy-http \
--enable-proxy-balancer \
--enable-ssl \
--enable-dav \
--enable-so \
--enable-maintainer-mode \
#--enable-ldap (未实践)
3 编译
make
4 安装
make install

5 基本配置
添加到环境变量中
ln -s /usr/local/apache2/bin/apachectl /usr/local/bin
ln -s /usr/local/apache2/bin/htpasswd /usr/local/bin
ln -s /usr/local/apache2/bin/httpd /usr/local/bin
ln -s /usr/local/apache2/conf/httpd.conf /etc/httpd.conf
或者是在/etc/profile 里加上export PATH=$PATH:/usr/local/apache2/bin

mv /usr/local/apache2/htdocs /srv/www


打开/etc/httpd.conf,找到User和Group,修改为如下内容
User nobody
Group nobody


配置 htdocs根目录
DocumentRoot "/srv/www/htdocs"
执行以下脚本设置目录权限:
chown nobody:nobody /usr/local/apache2.2 -R

如果修改目录以后报403
做以下修改
修改Apache配置文件httpd.conf中的:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Satisfy all
</Directory>

<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
# Deny from all
Satisfy all
</Directory>
即删除Deny from all行

*********************************************
php5.2.5安装
*********************************************
安装libxml2 2-2.6.30
./configure --prefix=/usr/local/libxml2
make
make install

安装Curl 7.17.1
# mkdir -p /usr/local/curl
# ./configure --prefix=/usr/local/curl
# make; make install
安装 freetype 2.3.5
# tar -zvxf freetype-2.1.10.tar.gz
# cd freetype-2.1.10
# mkdir -p /usr/local/freetype
# ./configure --prefix=/usr/local/freetype
# make;make install

安装jpegsrcv6b


# mkdir -p /usr/local/jpeg6
# mkdir -p /usr/local/jpeg6/bin
# mkdir -p /usr/local/jpeg6/lib
# mkdir -p /usr/local/jpeg6/include
# mkdir -p /usr/local/jpeg6/man
# mkdir -p /usr/local/jpeg6/man1
# mkdir -p /usr/local/jpeg6/man/man1

./configure --prefix=/usr/local/jpeg6 \
--enable-shared \
--enable-static \
make
make install
make install-lib

安装libpng 1.2.24

# cd libpng-1.2.24
# cp scripts/makefile.std makefile
# make; make install



安装zlib 1.2.3
./configure --prefix=/usr/local/zlib
make
make install
安装GD 2.0.35
./configure --prefix=/usr/local/GD(可选 默认在/usr/local/include里)
./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg6/ \
--with-png=/usr/local/lib/ \
--with-zlib=/usr/local/zlib/ \
--with-freetype=/usr/local/freetype/
make
make install


libxslt


安装php5.2.0
1 解压缩
tar -xvzf php-5.2.5.tar.gz
2 配置编译
./configure --prefix=/usr/local/php \
--with-libxml-dir=/usr/local/libxml2 \
--with-mysql=/usr/local/mysql \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-config-file-path=/etc \
--with-freetype-dir=/usr/local/freetype \
--with-zlib-dir=/usr/local/zlib \
--with-curl=/usr/local/curl \
--with-png-dir=/usr/local/lib/ \
--with-jpeg-dir=/usr/local/jpeg6 \
--with-gd=/usr/local/gd2/ \
# --with-xml \
# --enable-xslt \
# --with-xsl \

我在sles上的配置
./configure --prefix=/usr/local/php \
--with-libxml-dir=/usr/local/libxml2 \
--with-mysql=/usr/local/mysql \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-config-file-path=/etc/ \
--with-gd \
--with-curl \
--with-zlib \
然后配置apache
# vi /etc/httpd/httpd.conf
要改的有如下几处:
找到LoadModule php5_module modules/libphp5.so
前面的#号去掉
#AddType application/x-gzip .gz .tgz
下加二行
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
还有找到DirectoryIndex index.html
加上 index.php 让它把index.php做为默认页

六、测试PHP
# vi /var/www/index.php(其中/var/www为网页主目录)
添加:
<?
phpinfo();
?>
重新启动apache服务器

安装ZendOptimizer-3.0.1-linux-glibc21-i386.tar.gz
# ./install.sh


**********************************************
Berkeley DB4.3安装
**********************************************

进入 build_unix 目录
../dist/configure --prefix=/opt/Berkeley

测试

#include <sys/types.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <db.h>
#define DATABASE "demo.db"


int main()
{
DB *dbp;
DBT key, data;
int ret,t_ret;


if ((ret = db_create(&dbp, NULL, 0)) != 0)
{
fprintf(stderr, "db_create: %s\n", db_strerror(ret));
exit (1);
}


if ((ret = dbp->open(dbp, NULL, DATABASE, NULL, DB_BTREE, DB_CREATE, 0664)) != 0)
{
dbp->err(dbp, ret, "%s", DATABASE);
exit (1);
}


memset(&key, 0, sizeof(key));
memset(&data, 0, sizeof(data));
key.data = "age1";
key.size = strlen("age1")+1;
data.data = "123";
data.size = strlen("123")+1;

//......put data
if ((ret = dbp->put(dbp, NULL, &key, &data, 0)) == 0)
{
printf("db: %s: key stored.\n", (char *)key.data);
}
else
{
dbp->err(dbp, ret, "DB->put");
}


//.......get data
if ((ret = dbp->get(dbp, NULL, &key, &data, 0)) == 0)
printf("geted: key=%s data=%s\n", (char *)key.data, (char *)data.data);
else
dbp->err(dbp, ret, "DB->get");


//......del data
if((ret = dbp->del(dbp, NULL, &key, 0)) == 0)
printf("db: %s: key was deleted.\n", (char *)key.data);
else
dbp->err(dbp, ret, "DB->del");


if (dbp != NULL)
dbp->close(dbp, 0);


return 0;
}
如果 测试有问题 则 记得在/etc/lb.so.conf 加上/Berkeley/lib


**********************************************
Subversion 1.4.5安装
**********************************************
先安装
neon
./configure
make
make install
如果是apache2.0可以把deps都解压后直接安装subversion

直接把自己下载的apr1.2 apr-util1.2解压到subversion一个目录下 然后
$ cd apr; ./buildconf; cd ..

$ cd apr-util; ./buildconf; cd ..
./configure --prefix=/usr/local/subversion \
#--with-apr=/usr/local/apache2 \
#--with-apr-util=/usr/local/apache2 \
--with-berkeley-db=/usr/local/BerkeleyDB.4.3 \
--with-apxs=/usr/local/apache2/bin/apxs


配置apache支持svn
1 在http.conf下加入

<Location /svn>

DAV svn
SVNListParentPath on
SVNParentPath /opt/svn/

</Location>

2 创建apache密码文件
htpasswd -cm /opt/svn/svn-auth-file ergal

然后加入
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /opt/svn/svn-auth-file
Require valid-user

最终
<Location /svn>
DAV svn
SVNListParentPath on
SVNParentPath /opt/svn/
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /opt/svn/svn-auth-file
Require valid-user
</Location>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值