看了网上众多网友对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、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 二、环境配置 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 退出重新登录,是设置生效 三、档案安装 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 dire

要保护应用免受与会话相关的XSS攻击,需采取以下措施:1.设置HttpOnly和Secure标志保护会话cookie。2.对所有用户输入进行输出编码。3.实施内容安全策略(CSP)限制脚本来源。通过这些策略,可以有效防护会话相关的XSS攻击,确保用户数据安全。

优化PHP会话性能的方法包括:1.延迟会话启动,2.使用数据库存储会话,3.压缩会话数据,4.管理会话生命周期,5.实现会话共享。这些策略能显着提升应用在高并发环境下的效率。

thesession.gc_maxlifetimesettinginphpdeterminesthelifespanofsessiondata,setInSeconds.1)它'sconfiguredinphp.iniorviaini_set().2)abalanceIsiseededeedeedeedeedeedeedto to to avoidperformance andununununununexpectedLogOgouts.3)

在PHP中,可以使用session_name()函数配置会话名称。具体步骤如下:1.使用session_name()函数设置会话名称,例如session_name("my_session")。2.在设置会话名称后,调用session_start()启动会话。配置会话名称可以避免多应用间的会话数据冲突,并增强安全性,但需注意会话名称的唯一性、安全性、长度和设置时机。

会话ID应在登录时、敏感操作前和每30分钟定期重新生成。1.登录时重新生成会话ID可防会话固定攻击。2.敏感操作前重新生成提高安全性。3.定期重新生成降低长期利用风险,但需权衡用户体验。

在PHP中设置会话cookie参数可以通过session_set_cookie_params()函数实现。1)使用该函数设置参数,如过期时间、路径、域名、安全标志等;2)调用session_start()使参数生效;3)根据需求动态调整参数,如用户登录状态;4)注意设置secure和httponly标志以提升安全性。

在PHP中使用会话的主要目的是维护用户在不同页面之间的状态。1)会话通过session_start()函数启动,创建唯一会话ID并存储在用户cookie中。2)会话数据保存在服务器上,允许在不同请求间传递数据,如登录状态和购物车内容。

如何在子域名间共享会话?通过设置通用域名的会话cookie实现。1.在服务器端设置会话cookie的域为.example.com。2.选择合适的会话存储方式,如内存、数据库或分布式缓存。3.通过cookie传递会话ID,服务器根据ID检索和更新会话数据。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),