Fedora 7(Linux)下 Apache+PHP+MySQL+Subversion 开发测试环境配置过程

原创 2007年09月30日 23:16:00

安装Fedora 7

我是使用Fedora 7 Live在VMWare 6种安装的,具体的安装过程参见:http://0123.blog.163.com/blog/478831200751884210367.track

技巧:如果使用Live并且在VMWare中安装,那么在安装的时候分配内存尽量的多,这样可以加快安装速度。安装完后再分配给128M或者256M内存进行使用就可以了(视自己情况)。

注意:VMWare 5.5/VMWare Server 1.03以及更低的版本SCSI硬盘在Fedora 7中不被支持。建议升级到VMWare 6,如果由于其他原因不能升级的,可以把虚拟机中的SCSI硬盘换成IDE硬盘进行安装。

 

关闭图形界面

因为用于开发测试使用,所以没有必要使用图形环境,固将其关闭,以减少资源占用。

编辑/etc/inittab文件:

 

 [root@webapp ~]# cat /etc/inittab
#
# inittab       This file describes how the INIT process should set up
#               the system in a certain run-level.
#
# Author:       Miquel van Smoorenburg, <miquels@drinkel.nl.mugnet.org>
#               Modified for RHS Linux by Marc Ewing and Donnie Barnes
#

# Default runlevel. The runlevels used by RHS are:
#   0 - halt (Do NOT set initdefault to this)
#   1 - Single user mode
#   2 - Multiuser, without NFS (The same as 3, if you do not have networking)
#   3 - Full multiuser mode
#   4 - unused
#   5 - X11
#   6 - reboot (Do NOT set initdefault to this)
#
id:3:initdefault:

# System initialization.
si::sysinit:/etc/rc.d/rc.sysinit

l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6

# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now

# When our UPS tells us power has failed, assume we have a few minutes
# of power left.  Schedule a shutdown for 2 minutes from now.
# This does, of course, assume you have powerd installed and your
# UPS connected and working correctly. 
pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"

# If power was restored before the shutdown kicked in, cancel it.
pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"


# Run gettys in standard runlevels
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6

# Run xdm in runlevel 5
x:5:respawn:/etc/X11/prefdm -nodaemon

 

 

 

安装所需软件

装完Fedora 7后默认已经安装了Apache,所以我们需要安装的是php和Mysql以及subversion:

安装PHP

 [root@webapp ~]# yum install php
Loading "installonlyn" plugin
Setting up Install Process
Parsing package install arguments
primary.sqlite.bz2        100% |=========================|  56 kB    00:44    
http://fr2.rpmfind.net/linux/fedora/releases/7/Everything/i386/os/repodata/primary.sqlite.bz2: [Errno 4] Socket Error: timed out
Trying other mirror.
primary.sqlite.bz2        100% |=========================| 3.8 MB    12:26    
updates                   100% |=========================| 1.9 kB    00:00    
primary.sqlite.bz2        100% |=========================| 770 kB    02:05    
Resolving Dependencies
--> Running transaction check
---> Package php.i386 0:5.2.2-3 set to be updated
--> Processing Dependency: php-common = 5.2.2-3 for package: php
--> Processing Dependency: php-cli = 5.2.2-3 for package: php
--> Restarting Dependency Resolution with new changes.
--> Running transaction check
---> Package php-common.i386 0:5.2.2-3 set to be updated
---> Package php-cli.i386 0:5.2.2-3 set to be updated

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 php                     i386       5.2.2-3          fedora            1.3 M
Installing for dependencies:
 php-cli                 i386       5.2.2-3          fedora            2.5 M
 php-common              i386       5.2.2-3          fedora            205 k

Transaction Summary
=============================================================================
Install      3 Package(s)        
Update       0 Package(s)        
Remove       0 Package(s)        

Total download size: 4.0 M
Is this ok [y/N]: y
Downloading Packages:
(1/3): php-cli-5.2.2-3.i3 100% |=========================| 2.5 MB    08:15    
(2/3): php-common-5.2.2-3 100% |=========================| 205 kB    00:38    
(3/3): php-5.2.2-3.i386.r 100% |=========================| 1.3 MB    04:44    
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Importing GPG key 0x4F2A6FD2 "Fedora Project <fedora@redhat.com>" from /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
Is this ok [y/N]: y
Importing GPG key 0xDB42A60E "Red Hat, Inc <security@redhat.com>" from /etc/pki/rpm-gpg/RPM-GPG-KEY
Is this ok [y/N]: y
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: php-common                   ######################### [1/3]
  Installing: php-cli                      ######################### [2/3]
  Installing: php                          ######################### [3/3]

Installed: php.i386 0:5.2.2-3
Dependency Installed: php-cli.i386 0:5.2.2-3 php-common.i386 0:5.2.2-3
Complete!

安装Mysql 5

 [root@webapp ~]# yum install mysql-server
Loading "installonlyn" plugin
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package mysql-server.i386 0:5.0.37-2.fc7 set to be updated
--> Processing Dependency: libmysqlclient_r.so.15 for package: mysql-server
--> Processing Dependency: libmysqlclient.so.15 for package: mysql-server
--> Processing Dependency: libmysqlclient.so.15(libmysqlclient_15) for package: mysql-server
--> Processing Dependency: perl(DBI) for package: mysql-server
--> Processing Dependency: mysql = 5.0.37-2.fc7 for package: mysql-server
--> Processing Dependency: libmysqlclient_r.so.15(libmysqlclient_15) for package: mysql-server
--> Processing Dependency: perl-DBI for package: mysql-server
--> Processing Dependency: perl-DBD-MySQL for package: mysql-server
--> Restarting Dependency Resolution with new changes.
--> Running transaction check
---> Package mysql.i386 0:5.0.37-2.fc7 set to be updated
---> Package perl-DBD-MySQL.i386 0:3.0008-1.fc7 set to be updated
---> Package perl-DBI.i386 0:1.53-2.fc7 set to be updated
---> Package mysql-libs.i386 0:5.0.37-2.fc7 set to be updated

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 mysql-server            i386       5.0.37-2.fc7     fedora             10 M
Installing for dependencies:
 mysql                   i386       5.0.37-2.fc7     fedora            2.0 M
 mysql-libs              i386       5.0.37-2.fc7     fedora            1.5 M
 perl-DBD-MySQL          i386       3.0008-1.fc7     fedora            148 k
 perl-DBI                i386       1.53-2.fc7       fedora            611 k

Transaction Summary
=============================================================================
Install      5 Package(s)        
Update       0 Package(s)        
Remove       0 Package(s)        

Total download size: 14 M
Is this ok [y/N]: y
Downloading Packages:
(1/5): mysql-libs-5.0.37- 100% |=========================|    0 B    00:57    
http://ftp.hostrino.com/pub/fedora/linux/releases/7/Everything/i386/os/Fedora/mysql-libs-5.0.37-2.fc7.i386.rpm: [Errno 4] Socket Error: timed out
Trying other mirror.
(1/5): mysql-libs-5.0.37- 100% |=========================| 1.5 MB    06:52    
(2/5): perl-DBI-1.53-2.fc 100% |=========================| 611 kB    02:17    
(3/5): perl-DBD-MySQL-3.0 100% |=========================| 148 kB    00:45    
(4/5): mysql-5.0.37-2.fc7 100% |=========================| 2.0 MB    07:47    
(5/5): mysql-server-5.0.3 100% |=========================|  10 MB    31:09    
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: mysql-libs                   ######################### [1/5]
  Installing: perl-DBI                     ######################### [2/5]
  Installing: mysql                        ######################### [3/5]
  Installing: perl-DBD-MySQL               ######################### [4/5]
  Installing: mysql-server                 ######################### [5/5]

Installed: mysql-server.i386 0:5.0.37-2.fc7
Dependency Installed: mysql.i386 0:5.0.37-2.fc7 mysql-libs.i386 0:5.0.37-2.fc7 perl-DBD-MySQL.i386 0:3.0008-1.fc7 perl-DBI.i386 0:1.53-2.fc7
Complete!

安装Subversion

 [root@webapp ~]# yum install subversion
Loading "installonlyn" plugin
Setting up Install Process
Parsing package install arguments
fedora                    100% |=========================| 2.1 kB    00:00    
updates                   100% |=========================| 1.9 kB    00:00    
Resolving Dependencies
--> Running transaction check
---> Package subversion.i386 0:1.4.3-4 set to be updated
--> Processing Dependency: libneon.so.25 for package: subversion
--> Restarting Dependency Resolution with new changes.
--> Running transaction check
---> Package neon.i386 0:0.25.5-6 set to be updated

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 subversion              i386       1.4.3-4          fedora            2.3 M
Installing for dependencies:
 neon                    i386       0.25.5-6         fedora             95 k

Transaction Summary
=============================================================================
Install      2 Package(s)        
Update       0 Package(s)        
Remove       0 Package(s)        

Total download size: 2.4 M
Is this ok [y/N]: y
Downloading Packages:
(1/2): neon-0.25.5-6.i386 100% |=========================|  95 kB    00:22    
(2/2): subversion-1.4.3-4 100% |=========================| 2.3 MB    07:27    
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: neon                         ######################### [1/2]
  Installing: subversion                   ######################### [2/2]

Installed: subversion.i386 0:1.4.3-4
Dependency Installed: neon.i386 0:0.25.5-6
Complete!

安装php-mysql链接库

[root@dev ~]# yum install php-mysql
Loading "installonlyn" plugin
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package php-mysql.i386 0:5.2.2-3 set to be updated
--> Processing Dependency: php-pdo for package: php-mysql
--> Restarting Dependency Resolution with new changes.
--> Running transaction check
---> Package php-pdo.i386 0:5.2.2-3 set to be updated

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 php-mysql               i386       5.2.2-3          fedora             78 k
Installing for dependencies:
 php-pdo                 i386       5.2.2-3          fedora             58 k

Transaction Summary
=============================================================================
Install      2 Package(s)        
Update       0 Package(s)        
Remove       0 Package(s)        

Total download size: 136 k
Is this ok [y/N]: y
Downloading Packages:
(1/2): php-mysql-5.2.2-3. 100% |=========================|  78 kB    00:02    
(2/2): php-pdo-5.2.2-3.i3 100% |=========================|  58 kB    00:01    
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: php-pdo                      ######################### [1/2]
  Installing: php-mysql                    ######################### [2/2]

Installed: php-mysql.i386 0:5.2.2-3
Dependency Installed: php-pdo.i386 0:5.2.2-3
Complete!

 

配置mysql

 编辑/etc/my.cnf

 [mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql

# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
default-character-set=utf8
    
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[client]
default-character-set=utf8

 

 

 

配置subversion

我的svn库位置放在 /shanmin/svn,请根据自己保存的位置更改相应的命令

创建svn库:svnadmin create /shanmin/svn/

编辑/shanmin/svn/conf/svnserve.conf,把匿名权限设置为none,验证权限设置为write,并且使用passwd验证用户,修改完的代码:

 [root@dev conf]# cat svnserve.conf
### This file controls the configuration of the svnserve daemon, if you
### use it to allow access to this repository.  (If you only allow
### access through http: and/or file: URLs, then this file is
### irrelevant.)

### Visit http://subversion.tigris.org/ for more information.

[general]
### These options control access to the repository for unauthenticated
### and authenticated users.  Valid values are "write", "read",
### and "none".  The sample settings below are the defaults.
anon-access = none
auth-access = write
### The password-db option controls the location of the password
### database file.  Unless you specify a path starting with a /,
### the file's location is relative to the conf directory.
### Uncomment the line below to use the default password file.
password-db = passwd
### The authz-db option controls the location of the authorization
### rules for path-based access control.  Unless you specify a path
### starting with a /, the file's location is relative to the conf
### directory.  If you don't specify an authz-db, no path-based access
### control is done.
### Uncomment the line below to use the default authorization file.
# authz-db = authz
### This option specifies the authentication realm of the repository.
### If two repositories have the same authentication realm, they should
### have the same password database, and vice versa.  The default realm
### is repository's uuid.
# realm = My First Repository

设置passwd文件

 [root@dev conf]# cat passwd
### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.

[users]
harry = harryssecret
# sally = sallyssecret

passwd文件中,格式是 用户名=密码

 

设置自动发布.这个是用于我们远程提交到svn的代码,自动的发布到apache的目录下,这样我们就可以把提交代码和ftp合并成一个了(这也是我为什么在整个安装过程未提及FTP的原因)。

在/shanmin/svn/hooks下增加post-commit文件。(这里我的web目录为/var/www/html)

 [root@dev hooks]# cat post-commit
#!/bin/sh

export LANG=en_US.UTF-8
/usr/bin/svn update /var/www/html

把这个文件设置成可执行文件。例如:chmod 777 post-commit 

 

打开所需服务,关闭无用服务

根据我的习惯,我使用setup关闭和打开了几个服务。(注:因为我把Fedora7放在VMWare里面,所以我尽量的让Fedora7少占资源,把能关的服务都关掉)(从默认开始)

autofs 关闭。不使用移动存储设备就关掉这个。

bluetooth 关闭。没有蓝牙设备,没有任何用处。

cpuspeed 关闭。用于CPU降速的,如果CPU不支持降速就关掉这个。

httpd 打开

iptables 关闭。因为是在内网开发测试使用,所以防火墙基本上没有什么用途。

ip6tables 关闭。没有使用ipv6

isdn 关闭。没有使用ISDN

irqbalance 关闭。不在多CPU环境下,这个服务没有什么用处。

mysqld 打开

netfs 关闭。如果不使用网络挂接就关掉。

yum-updatest 关闭。这个用于自动升级提醒,不进图形界面就没有用处。

 

运行Subversion服务

默认没有给svn提供一个开启的服务,所以我们得手动添加到rc.local文件中(其实完全可以不使用svn服务,而使用Apache。但是因为开发测试环境也在Apache下,我会影响开发,所以一直使用单独的svn服务)。

编辑/etc/rc.local文件,加入svn服务器运行命令

 [root@dev ~]# cat /etc/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

svnserve -d -r /shanmin/svn

 

重起服务器,做最后设置和测试

 把svn中的数据取到apache目录下:

[root@dev ~]# svn checkout svn://127.0.0.1/ /var/www/html/

验证是否正常取出

[root@dev ~]# ll /var/www/html/ -a
total 24
drwxr-xr-x 3 root root 4096 2007-06-24 17:08 .
drwxr-xr-x 6 root root 4096 2007-05-26 03:46 ..
drwxr-xr-x 6 root root 4096 2007-06-24 17:08 .svn

如果有.svn目录证明正常取出。

配置mysql远程管理,默认mysql的root在本机管理,简单起见,我都是把localhost改为%

 [root@dev ~]# mysql
Welcome to the MySQL monitor.  Commands end with ; or /g.
Your MySQL connection id is 5
Server version: 5.0.37 Source distribution

Type 'help;' or '/h' for help. Type '/c' to clear the buffer.

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> update user set host='%' where host='localhost' and user='root';
Query OK, 1 row affected (0.04 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

mysql>

 

完成。

 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

php 起始页,验证php的web server是否已经成功 fedora linux+apache+mysql+php平台构建及环境配置

fedora 14 linux+apache+mysql+php平台构建及环境配置

win7+apache+php+mysql环境配置

1.php版本简介 php各版本之间的区别,php版本后面一般有VC6和VC9、Thread Safe和Non Thread Safe的区别,VC6就是legacy Visual Studio 6 ...

Windows7+PHP5.4+Apache2.2+MySQL5.5环境配置

我们选择的实验环境是Windows7+ PHP5.4 + Apache Tomcat2.2 + MySQL5.5。环境的配置参考了博客文章:http://www.impng.com/web-dev/h...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)