仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1020|回复: 19
打印 上一主题 下一主题

[学习教程] PHP网站制作之RedHat上装置 apache + gd1.8.3 + php4...

[复制链接]
金色的骷髅 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:17:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
你的留言本应该加入注册以及分页功能了,而如果你更强的话,UI(用户界面)也可以加强,完成之后,感觉是不是特有成就感?不管怎么样,咱好歹是写了一个动态网站程序了,放在自己的网站上耍耍吧。apache|mysql|oracle|攻略   看了网上浩瀚网友对php、jsp、sybase、oracle、apache等方面的装置经历,发明有良多都是反复并且不敷周全,依据自己对以上各类东东临时总结和参考相干文档和列位网友的文章,并经本人亲身理论,现将在RedHat6.2下apache1.3.12+gd1.8.3+php4.04+tomcat+sybase11.9.2+oracle8.1.6+mysql3.22.27的装置设置装备摆设全体贡献给人人,但愿能对人人有所匡助;

运转情况:PⅢ550+256M+20G+530TX Lan+sis6326 8M+RedHat Linux6.2
装置计划:sybase装置在/sybase目次
oracle装置在/home/oracle目次
gd装置在/usr/local目次
apache装置在/www目次
tomcat装置在/usr/local/jakarta-tomcat目次
jdk装置在/usr/local/jdk122目次

1、材料筹办
1、apache_1312.tar.gz
2、php-404.tar.gz
3、jakarta-tomcat.tar.gz
4、sybase11.9.2包:
sybase-common-1192-1i386.rpm
sybase-ase-1192-1i386.rpm
sybase-monserver-1192-1i386.rpm
sybase-openclient-1111-1i386.rpm
sybase-sqlremote-602-1i386.rpm
sybase-chinese-1192-1i386.rpm
5、oracle8.1.6.tar
6、mysql3.22.27包:
mysql-3.22.27-1.i386.rpm
mysql-devel-3.22.27-1.i386.rpm
mysql-client-3.22.27-1.i386.rpm
7、jdk1_2_2-linux-i386.tar.gz
8、mod-jserv.so
9、gd183.tar.gz

2、情况设置装备摆设
1、体系装置
装置linux体系时创立目次/www、/sybase和/home并分派给各自较大空间,用于存储数据库材料和网页文件;
2、情况变量
设置装备摆设运转oracle和tomcat和java的java运转情况变量
用root用户登录体系
#vi /etc/profile
添加以下行
ORACLE_HOME=/home/oracle
export ORACLE_HOME

JAVA_HOME=/usr/local/jre
export JAVA_HOME

ORACLE_SID=dblee(此处dblee可以改成你本人想用的称号)
export ORACLE_SID

ORACLE_TERM=xterm
export ORACLE_TERM

ORACLE_OWNER=oracle8
export ORACLE_OWNER

TNS_ADMIN=/home/oracle/config/8.1.6
export TNS_ADMIN

CLASSPATH=$ORACLE_HOME/jdbc/lib/classes111.zip:.
CLASSPATH=/usr/local/jdk/lib:/usr/local/jre/lib:$CLASSPATH
export CLASSPATH

PATH=$PATH:/usr/local/jre/bin:/usr/local/jdk/bin:/bin:/sbin
PATH=$PATH:/usr/bin:/usr/sbin:/usr/local/bin:$ORACLE_HOME/bin
PATH=$PATH:/usr/local/sbin:/usr/bin/X11:/usr/X11R6/bin:.
export PATH
加入从头登录,是设置失效

3、档案装置
1、sybase装置
假如您有sybase 的装置光盘,可以在linux的图形界面下利用图形体例装置,sybase供应图形界面下的装置导游
本文彩用手动的rpm包装置;
(1)以root用户登录
(2)在sybase的各个rpm包中,必需先装置sybase-common-1192-1i386.rpm包,这是其他包运转的需要内容
#rpm --prefix=/sybase -hiv ./sybase-common-1192-1i386.rpm
#rpm --prefix=/sybase -hiv ./sybase-ase-1192-1i386.rpm
#rpm --prefix=/sybase -hiv ./sybase-monserver-1192-1i386.rpm
#rpm --prefix=/sybase -hiv ./sybase-openclient-1111-1i386.rpm
#rpm --prefix=/sybase -hiv ./sybase-sqlremote-602-1-i386.rpm
#rpm --prefix=/sybase -hiv ./sybase-chinese-1i386.rpm
到此,完成了sybase组件的装置,需求停止数据库创立和需要的设置装备摆设才干运转
(3)设置目次文件的权限
#chown -R sybase /sybase
#chgrp -R sybase /sybase
(4)设置sybase用户口令
#passwd sybase
(5)加入体系,用sybase用户登录,体系会给一个提醒,选择n并回车;
(6)创立sybase数据库文件存在的目次
#mkdir /sybase/data
(7)在/sybase/bin目次中创立数据库创立和运转需求的两个文件
编纂srvbuild.adaptive_server.rs和srvbuild.backup_server.rs文件
srvbuild.adaptive_server.rs文件典范以下:
sybinit.release_directory: /sybase
sybinit.product: sqlsrv
sqlsrv.server_name: kevin_sybase (此处设置为你想利用的sybase数据库办事名)
sqlsrv.new_config: yes
sqlsrv.do_add_server: yes
sqlsrv.network_protocol_list: tcp
sqlsrv.network_hostname_list: 192.168.18.19(此处设置为您的办事器ip地址)
sqlsrv.network_port_list: 4000(sybase数据库利用的端口)
sqlsrv.master_device_physical_name: /sybase/data/master.dat
sqlsrv.master_device_size: USE_DEFAULT
sqlsrv.master_database_size: USE_DEFAULT
sqlsrv.errorlog: USE_DEFAULT
sqlsrv.do_upgrade: no
sqlsrv.sybsystemprocs_device_physical_name: /sybase/data/sybsystem.dat
sqlsrv.sybsystemprocs_device_size: USE_DEFAULT
sqlsrv.sybsystemprocs_database_size: USE_DEFAULT
sqlsrv.sybsystemdb_device_physical_name: /sybase/data/sybsystemdb.dat
sqlsrv.sybsystemdb_device_size: USE_DEFAULT
sqlsrv.sybsystemdb_database_size: USE_DEFAULT
sqlsrv.default_backup_server: kevin_sybase_bk(此处设置为您的sybase数据库对应的backup办事名)
srvbuild.backup_server.rs文件典范以下:
sybinit.release_directory: /sybase
sybinit.product: bsrv
bsrv.server_name: kevin_sybase_bk(此处设置为在上门设置的backup办事名)
bsrv.do_add_backup_server: yes
bsrv.network_protocol_list: tcp
bsrv.network_hostname_list: 192.168.18.19(办事器的ip地址)
bsrv.network_port_list: 4100(sybase备份办事器利用的端口)
bsrv.language: USE_DEFAULT
bsrv.character_set: USE_DEFAULT
bsrv.tape_config_file: USE_DEFAULT
bsrv.errorlog: USE_DEFAULT

(8)创立数据库(以后用户依然是sybase)
#cd /sybase/bin
#./srvbuild -r ./srvbuild.adaptive_server.rs
#./srvbuild -r ./srvbuild.backup_server.rs
运转完成后,将会在/sybase/install目次中生成两个新文件RUN_kevin_sybase和RUN_kevin_sybase_bk
到此,sybase数据库的装置和设置装备摆设和数据库的创立已完成;
(9)启动数据库(以后用户依然是sybase)
#cd /sybase/install
#./startserver -f ./RUN_kevin_sybase
#./startserver -f ./RUN_kevin_sybase_bk
看到一些提醒后,假如不报毛病,暗示数据库已启动,此时可以运转以后目次下的./showserver检查;
#./showserver
将前往以后正在运转的sybase数据库办事情形,正常下应当是两个办事,分离是adative和backup;
到此,您的sybase数据库已全体装置完成,您可使用sybase的客户端或powerbuilder等东西经由过程您的
办事器ip和端口4000会见sybase数据库;
(10)经历提醒
假如您在第8或第9步中呈现毛病,请反省您的机械收集设置是不是正常,必需包管您的办事器ip地址可以在
本机上ping通,不克不及是ping localhost,必需是ping your ip胜利才行,这可是kevin已经实验了一下战书工夫
才发明的奥密哟!^_^


2、装置jdk
#cd /usr/local
#tar -zxvf jdk1_2_2-linux.tar.gz
#ln -s jdk122 jdk
#ln -s jdk122/jre jdk
到此完成了jdk的装置

3、装置oracle8.1.6
在装置oracle之前,必需完成情况变量的设置和jdk的装置
[root@oradb /root]$               #以root体例登录
[root@oradb /root]$ groupadd oracle      #创立oracle用户组
[root@oradb /root]$ useradd oracle -g oracle    #在oracle组中建新用户oracle
[root@oradb /root]$ passwd oracle        #修正oracle用户口令
[root@oradb /root]$ useradd apache -g oracle #创立apache用户 

注:oracle组和oracle用户是oracle装置需求的
注:创立oracle用户后,linux体系主动在/home目次下创立/home/oracle目次,给oracle用户利用,
  oracle用户对此目次具有一切的权限,
  为便利,本例把oracle体系装置在oracle用户本人的目次下
[root@oradb /oracle]$ exit           #加入,以oracle用户从头登录(以下的操作全体是oracle用户)
[oracle@oradb /oracle]$
[oracle@oradb /oracle]$ ls -l
[oracle@oradb /oracle]$ tar zxvf oracle8161_tar.gz   #解压oracle紧缩包到以后目次
[oracle@oradb /oracle]$mv Oracle8iR2 orainst #为了写起来便利,我将目次从头定名了,您可以不变
[oracle@oradb /oracle]$ startx     #启动X-windows后,启用一个终端(xterm),(图形窗口)
                    #在该终端中运转runInstaller
[oracle@oradb /oracle]$ cd orainst
[oracle@oradb /orainst]$ ./runInstaller #履行oracle装置法式,linux下履行一个法式,可用./挪用履行


这时候你可以看到用jre运转的全新的图形化的OUI的接待画面,依照提醒持续装置历程:
Welcome:
按next

File Locations:
按next

UNIX Group Name:
甚么也不添,按next
失足,提醒要以root权限运转“/home/oracle/orainstRoot.sh

CTRL+ALT+F2,翻开一个新的掌握台(字符窗口)
以root登录
[root@oradb /root]$ cd /home/oracle
这时候,/home/oracle/目次下只要一个文件orainstRoot.sh,运转它
[root@oradb /oracle]$ sh orainstRoot.sh

CTRL+ALT+F7,回到装置界面(图形窗口)
按Retry按钮,就能够持续装置了,

Available Products:
选Oracle8i Enterprise Edition 8.1.6.1.0,按next

Installation Types:
选Typical(540MB),按next,这时候,屏幕右上角呈现一个进度标尺

Database Identification:
Global Database Name:输出oracle8(可以恣意)
SID:保存orcl
按next

Database File Location:
恣意目次,本例设为“/home/oracle/”,按Next,这时候,屏幕右上角进度标尺持续行进

呈现Summary,对你想要装置的产物作一个总结
按Install,呈现Install画面,守候... 你可以看到窗口底部提醒的装置等log文件目次,可供今后查询。

弹出Setup Privileges窗口
提醒:在装置持续停止之前,需求以root运转一个剧本“/home/oracle/root.sh”,
CTRL+ALT+F2,回到方才运转的第2个终端窗口
以root权限履行该文件,
[root@oradb /oracle]$ sh root.sh

屏幕显示:
Enter the full pathname of the local bin directory:[/usr/local/bin]:c
回车
体系入手下手履行一些举措,履行终了,CTRL+ALT+F7按前往OUI,按OK。

Database Creation Progress入手下手,慢慢停止以下4个进程
Creating and starting Oracle instance
Copying database files
Initializing database
Database creation completed

以上4个进程完成,弹出Oracle Database Configuration Assistant Alert窗口,
提醒:数据库创立完成,告知你数据库的一些根基信息
global databse name:oracle8
database system identifier(SID):orcl
SYS account password:change_on_install
SYSTEM account password:manager
按ok

End of Installation,按Exit加入OUI,完成装置。

加入图形窗口,回到
[oracle@oradb /oracle]$

这时候,oracle数据库已装置胜利,而且数据库已启动运转,可以试一下
[oracle@oradb /oracle]$sqlplus system/manager

呈现以下信息:
SQL*Plus: Release 8.1.6.0.0 - Production on Fri Oct 26 20:20:56 2000

(c) Copyright 1999 Oracle Corporation. ALL rights reserved.

Connected to:
Oracle8i Enterprise Edition Release 8.1.6.1.0 - Production
With the Partitioning option
JServer Release 8.1.6.0.0 - Production

SQL> show user
USER is "SYSTEM"
SQL>
SQL> exit


启动数据库:
[oracle@oradb /oracle]$ svrmgrl
SVRMGR> connect internal
Connected.
SVRMGR> startup
ORACLE instance started.
显示SGA形态
Database mounted.
Database opened.
SVRMGR>


封闭数据库:
[oracle@oradb /oracle]$ svrmgrl
SVRMGR> connect internal
Connected.
SVRMGR> stutdown
Database closed.
Database dismounted.
ORACLE instance shut down.
SVRMGR>


启动监听器
[oracle@oradb /oracle]$ lsnrctl
LSNRCTL> start
LSNRCTL> exit

中断监听器
[oracle@oradb /oracle]$ lsnrctl
LSNRCTL> stop
LSNRCTL> exit

检查监听器形态
[oracle@oradb /oracle]$ lsnrctl
LSNRCTL> status
LSNRCTL> exit

到此,您已完成了oracle的全体装置


4、装置mysql
mysql数据库的装置绝对对照复杂,只要利用网高低载的rpm装置包就可以主动装置
进入rpm包地点的目次后运转以下号令
#rpm -hiv ./mysql-3.22.27-1.i386.rpm
#rpm -hiv ./mysql-devel-3.22.27-1.i386.rpm
#rpm -hiv ./mysql-client-3.22.27-1.i386.rpm
如许,您就完成了mysql的装置,体系并主动启动了mysql办事,您可以直接敲入mysql便能停止sql操作了;


5、装置tomcat
tomcat的装置也对照轻易
#cd /usr/local
#tar -zxvf ./jakarta-tomcat.tar.gz
如许您就完成了tomcat的装置,上面停止测试
#cd /usr/local/jakarta-tomcat/bin
#./startup.sh start (start参数用来启动tomcat,您可以加上stop来中断tomcat办事)
#lynx http://localhost:8080
假如您看到了tomcat的接待信息,暗示tomcat已正常运转了!

6、装置gd库
进入gd183.tar.gz地点目次
#tar -zxvf ./gd183.tar.gz
#cd gd183
#./configure --prefix=/usr/local
#make
#make install
提醒:在make过程当中能够会提醒毛病:找不到文件/usr/local/include/gd.h,您可以本人创立include目次,并拷贝文件
#mkdir /usr/local/include
#cp ./gd.h /usr/local/include/
如许就不会有毛病产生,祝你好运!


7、装置apache和php4
我把apache和php4的装置放在一同装置,是由于他们之间有局部器材是需求在装置过程当中一同设置的;
将apache和php的gz文档拷贝到/www目次下(以下操作全体利用root用户)
#cd /www
#tar -zxvf ./apache_1312.tar.gz
#tar -zxvf ./php-404.tar.gz
#cd /www/apache_1.3.12
#./configure --prefix=/www
#cd /www/php_404
#configure --with-apache=../apache_1.3.12 --with-gd=/usr/local --with-sybase=/sybase
--with-oracle=/home/oracle --with-oci8=/home/oracle --with-mysql --enable-tarck-vars
#make
#make install
#cp ./php.ini-dist /usr/local/lib/php.ini
如许就完成了对php的设置装备摆设和装置,上面持续装置apache
#cd /www/apache_1.3.12
#./configure --prefix=/www --enable-module=all --activate-module=./src/modules/php4/libphp4.a
#make
#make install
如许就完成了apache的装置,此时需求编纂/www/conf/httpd.conf文件,将对php4的撑持局部正文去失落;

提醒:启动apache办事利用/www/bin/apachectl start (sotp中断)


8、毗连tomcat和apache
在装置挽tomcat和apache以后,您需求停止需要的设置,才干使tomcat和apache毗连起来运转,使您的apache也能够撑持jsp
#cp mod-jserv.so /www/libexec/
#cp /usr/local/jakarta-tomcat/conf/tomcat.conf /www/conf/
#vi /www/conf/httpd.conf
到场:Include /www/conf/tomcat.conf一行到httpd.conf文件中

停止测试:#lynx http://localhost/examples 假如您看到了tomcat的页面,暗示毗连胜利!^_^


4、体系测试
1、测试php
#cd /www/htdocs
#vi phpinfo.php
phpinfo();
?>
经由过程ie会见phpinfo.php,看前往信息是不是正常

2、测试php和sybase的毗连
#cd /www/htdocs
#vi sybase.php
$conn=sybase_connect("kevin_sybase","sa","");
if ($conn)
{
echo "Sybase Connect Successfully!";
}
else
{
echo "Sybase Connect Failed!";
}
经由过程ie会见sybase.php,看前往信息

3、测试php和oracle的毗连
#cd /www/htdocs
#vi oracle.php
$conn=OCILogon("SCOTT","TIGER","dblee");
if ($conn)
{
echo "Oracle connect successfully!";
}
else
{
echo "Oracle connect failed!";
}
?>

4、测试php和mysql的毗连
#cd /www/htdocs
#vi mysql.php
$conn=mysql_connect("localhost","root","");
if ($conn)
{
echo "Mysql Connect Successfully!";
}
else
{
echo "Mysql Connect Failed!";
}
经由过程ie会见mysql.php,看前往信息


6、测试jsp的运转
#cd /usr/local/jakarta-tomcat/webpages/examples/jsp/
#vi jsp.jsp

hello world

经由过程ie会见jsp.jsp,会见途径为http://your ip/examples/jsp/jsp.jsp,假如能看见hello world暗示胜利.  我的这套线路可能跟许多学习PHP的爱好者不谋而合,这也算是一个循序渐进的学习过程,不过新手不要看到上面的概括就以为学习蛮简单的,默默在此不得不对您稍微泼一下冷水,任何东西其实都不简单。
柔情似水 该用户已被删除
沙发
发表于 2015-2-4 10:47:11 | 只看该作者
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
再见西城 该用户已被删除
板凳
发表于 2015-2-8 20:36:06 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
小妖女 该用户已被删除
地板
发表于 2015-2-23 08:26:54 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
乐观 该用户已被删除
5#
发表于 2015-3-3 12:19:51 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
蒙在股里 该用户已被删除
6#
发表于 2015-3-11 01:21:17 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
谁可相欹 该用户已被删除
7#
发表于 2015-3-17 17:50:05 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
兰色精灵 该用户已被删除
8#
发表于 2015-3-24 08:23:00 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
海妖 该用户已被删除
9#
发表于 2015-4-3 21:40:41 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
山那边是海 该用户已被删除
10#
发表于 2015-4-11 15:18:11 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
飘灵儿 该用户已被删除
11#
发表于 2015-4-11 17:13:55 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
admin 该用户已被删除
12#
发表于 2015-4-12 15:02:54 | 只看该作者
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
活着的死人 该用户已被删除
13#
发表于 2015-4-18 22:24:20 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
透明 该用户已被删除
14#
发表于 2015-4-30 12:09:24 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
精灵巫婆 该用户已被删除
15#
发表于 2015-5-2 20:10:42 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
爱飞 该用户已被删除
16#
发表于 2015-5-4 10:22:43 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
不帅 该用户已被删除
17#
发表于 2015-5-6 15:12:58 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
第二个灵魂 该用户已被删除
18#
发表于 2015-5-12 02:38:04 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
深爱那片海 该用户已被删除
19#
发表于 2015-6-22 21:22:32 | 只看该作者
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
若天明 该用户已被删除
20#
发表于 2015-7-4 01:41:54 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 08:56

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表