--------------------------------------首先安裝apche-----------------------------------------
- 服務器版本:
BT5 R2
- 安裝軟件:
- apr-1.3.5.tar.gz
(APR(Apache portable Run-time libraries,Apache可移植運行庫)的目的如其名稱一樣,主要爲上層的應用程序提供一個可以跨越多操作系統平臺使用的底層支持接口庫。)
下載地址:http://apr.apache.org/download.cgi
- apr-util-1.3.7.tar.gz
下載地址:http://apr.apache.org/download.cgi
- httpd-2.2.11.tar.gz
(apr和apache的版本要對應,如果Apache爲2.0.x,對應的APR版本應爲0.9.x;Apache爲2.2.x,對應的APR版本應爲1.2以上版本)
下載地址:http://httpd.apache.org/download.cgi
- neon-0.28.2.tar.gz
下載地址:http://www.webdav.org/neon/neon-0.28.2.tar.gz
- subversion-1.5.0.tar.gz
下載地址:
- subversion-deps-1.5.0.tar.gz
(因爲手頭下載的有1.4.4版本的和1.5.0版本的,就用高版本的來測試了)
下載地址:
- 安裝
- 安裝apr-1.3.5.tar.gz 和apr-util-1.3.7.tar.gz
- 安裝apr-1.3.5.tar.gz
# tar zxvf apr-1.3.5.tar.gz
# cd apr-1.3.5
# ./configure
#make
#make install
安裝如圖:
- 安裝apr-util-1.3.7.tar.gz
# tar zxvf apr-util-1.3.7.tar.gz
# cd apr-util-1.3.7
# . /configure --with-apr=/usr/local/apr
# make
# make install
安裝如圖:
- 安裝httpd-2.2.11.tar.gz
# tar zxvf httpd-2.2.11.tar.gz
# ./configure --prefix=/usr/local/apache2 --enable-dav --enable-modules=so --enable-maintainer-mode --enable-rewrite --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config
# make
# make install
啓動Apache服務:
# /usr/local/apache2/bin/apachectl start
用瀏覽器查看http://localhost/,得到It works!
說明apache已經配置成功了。
測試完成後關閉服務,因爲還要安裝SVN,否則會報錯
# /usr/local/apache2/bin/apachectl stop
安裝如圖:
- 安裝neon-0.28.2.tar.gz
此步至關重要!
#tar zxvf neon-0.28.2.tar.gz
#cd neon-0.28.2
#./configure --prefix=/usr/local/neon
此時需修改Makefile文件:
配置neo-0.28.2/src/Makefile,將CFLAGS = -g -O2 改成 CFLAGS = -fPIC -g -O2
#make
#make install
安裝此步neon至關重要,否則會提示如下錯誤:
could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [subversion/libsvn_ra_dav/libsvn_ra_dav-1.la] Error 1
安裝如圖:
- 安裝Subversion
# tar zxvf subversion-1.5.0.tar.gz
# tar zxvf subversion-deps-1.5.0.tar.gz
# cd subversion-1.5.0
# rm -rf apr
# rm -rf apr-util
# cd zlib
#./configure --prefix=/usr/local/zlib
#make
#make install
#cd ..
#./configure --with-apxs=/usr/local/apache2/bin/apxs --prefix=/usr/local/subversion --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config –with-neon=/usr/local/neon --with-ssl --with-zlib=/usr/local/zlib --enable-maintainer-mode
#make
#make install
注:
- 由於subversion-deps包裏的APR是0.9.x的,因此編譯svn時要刪除從deps裏解壓出來的apr, apr-util,改而使用apache 2.2裏提供的;
- ./configure的時候必須加上–with-neon=/usr/local/neon,否則會提示錯誤(安裝neon的時候強調過);
- 查看Apache的配置文件:/usr/local/apache2/conf/httpd.conf
看到下面兩個模塊說明安裝成功
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
安裝如圖:
- 配置
1.建立倉庫
#mkdir -p/home/svnroot/repository '這裏假設我們以前的項目文件在/boot目錄下,現在導入到test庫裏 '這裏把倉庫目錄權限給apache用戶及apache用戶組,主要是因爲我們要通過http來訪問svn |
2.配置http服務器
首先測試一下服務器是否可以正常訪問,命令如下:
#cd /usr/local/apache2/bin |
更改apache2的配置文件"/usr/local/apache2/conf/httpd.conf",在文件末尾添加如下內容:
LoadModule dav_svn_module modules/mod_dav_svn.so '上面兩行其實安裝軟件時,已經自動添加,如果沒有的話,手工添加就行 |
我們使用"#/usr/local/apache2/bin/apachectl restart"重啓apache服務器,通過瀏覽器訪問"http://ip/svn/test",如果提示輸入用戶名、密碼的話,配置成功。
接着,我們生成valid-user文件,這個文件其實就是創建可以訪問http的用戶,使用的是htpasswd命令,方法如下:
#cd /usr/local/apache2/bin |
現在配置訪問svn的用戶權限,這裏就涉及到上面提到的authz.conf文件了,方法如下:
'附加的一些說明 [test2:/]//test2倉庫根目錄下的訪問權限 例如我們把權限配置成這樣: [groups] valid-user=hrwang,yli invalid-user=bao [test:/] @valid-user=rw @invalid-user= 這樣的話,用戶hrwang和yli可以讀寫,而bao不可以讀寫。 |
Ok,配置完成,重啓apache服務器,在瀏覽器裏輸入http://ip/svn/test,在出現的輸入框裏輸入用戶名hrwang和密碼,看看出現了什麼,是/boot目錄下的文件,:)
四、注意
因爲我們對svn的操作都是通過http,而http默認是以用戶deamon,用戶組deamon來運行的(這個可以從httpd.conf配置文件中的"User" "Group"兩個選項看出)。我把這兩項更改爲apache,讓其以apache用戶及apache用戶組來運行httpd服務。這就是爲什麼上面我把倉庫的目錄權限設置爲apache:apache的原因。
---------------------------------------安裝 PHP-----------------------------------------------
1.獲取安裝文件: http://www.php.net/downloads.php php-5.3.8.tar.gz
獲取安裝php需要的支持文件:http://download.csdn.net/download/netlong339/1351852 libxml2-2.6.32.tar.gz
2.安裝libxml2
1 tar zxvf libxml2-2.6.32.tar.gz
2 cd libxml2-2.6.32
3 ./configure --prefix=/usr/local/libxml2
4 make
5 make install
如果安裝成功以後,在/usr/local/libxml2/目錄下將生成bin、include、lib、man和share五個目錄。在後面安裝PHP5源代碼包的配置時,會通過在configure命令的選項中加上"--with-libxml-dir=/usr/ local/libxml2"選項,用於指定安裝libxml2庫文件的位置。
3.安裝php5
#tar zvxf php-5.3.8.tar.gz
#cd php-5.3.8
#./configure \
--prefix=/usr/local/php \
--with-mysql=/usr/local/mysql \
--with-apxs=/usr/local/apache2/bin/apxs \
--with-libxml-dir=/usr/ local/libxml2
#make
#make install
4.重新配置apache2讓他支持php
配置 httpd.conf 讓apache支持PHP:
# vi /usr/local/apache/conf/httpd.conf
找到 AddType application/x-gzip .gz .tgz 在其下添加如下內容
AddType application/x-httpd-php .php (.前面有空格)
AddType application/x-httpd-php-source .phps (.前面有空格)
然後CPOPY PHP的配置文件
cp php-5.3.8/php.ini.dist /usr/local/php/lib/php.ini
(如果沒有php.ini.dist 則把php.ini-development php.ini-production中的任何一個重命名爲php.ini.dist即可。)
修改php.ini文件 register_globals = On
重啓apache
service apache restart
5.測試php是否成功安裝
寫一個php測試頁info.php,放到apache2/htdocs中。
<?php
phpinfo();
?>;
在瀏覽器中輸入:服務器地址/info.php
如果能正常顯示出php的信息,則說明Apche+Mysql+PHP安裝成功!