胡亮《搭建基于Linux动态网站开发平台》第1页共19页基于Linux的动态网站开发平台的搭建学生姓名胡亮指导老师周书仁摘要本文介绍如何搭建基于linux 的动态网站开发平台。对Linux系统、MySQL数据库、Apache、PHP和Samba服务器的相关知识及安装配置做了介绍。我们将使用MySQL搭建免费的数据库服务器使用Apache世界上最流行的web服务器60的网站运行着Apache和PHP构建动态网站使用Samba服务器实现网站程序的快速开发。关键词LinuxMySQLApachePHPSamba 胡亮《搭建基于Linux动态网站开发平台》第2页共19页目录目录.......................................................................................................................................... .......................2 1 引言.......................................................................................................................................... ...................3 1.1 课程设计的意义.. (3)
1.2课程设计的目的 (4)
1.3 相关概念简介..........................................................................................................................................
4 2 MySQL数据库服务器的安装及其设置.....................................................................................................6 2.1获得MySQL 软件............................................................................................................................. 6 2.2 熟悉MySQL 的安
装流程..................................................................................................................... 6 2.3 MySQL数据库服务器的安装................................................................................................................. 6 2.3 MySQL 服务器的初始设置................................................................................................................... 8 2.4 新建数据库及其权限设置.................................................................................................................... 9 3 Apache 和PHP的安装与配置..................................................................................................................10 3.1 Apache 和PHP软件的获得.................................................................................................................. 10 4 测试.......................................................................................................................................... .................1
5 5 结束语.......................................................................................................................................... .............18 参考文献.......................................................................................................................................... .............19 胡亮《搭建基于Linux动态网站开发平台》第3页共19页1 引言1.1 课程设计的意义LINUX是这几年一款异军突起的操作系统以其公开的源代码、强大稳定的网络功能和大量的免费资源受到业界的普遍赞扬。简单的说linux就是一套免费使用和自由传播的类UNIX操作系统它主要用于基于Intel x86系列CPU的计算机上。Linux系统是由世界各地成千上万的程序员设计和实现的其目的是建立不受任何
商品化软件的版权制约的、全世界都能自由使用的UNIX兼容产品。其中完善的内置网络是Linux的一大
特点。Linux在通信和网络功能方面优于其他操作系统。Linux为用户提供了完善的、强大的网络功能。Linux免费提供了大量支持Internet的软件Internet是在UNIX领域中建立并繁荣起来的。现在的Web网站已经不再是仅向浏览者或用户提供静态网页内容的浏览而是要求能够和用户进行动态的信息交流的动态Web网站所以搭建Web网站平台不仅要支持简单的HTML网页浏览更重要的是使Web站点能和用户实现一种动态的交互式操作。这就要求Web服务器在提供标准的HTML网页浏览之外提供一种能和用户交流的技术。这种技术不但要能够收集和反馈用户信息还要支持数据库操作把信息存入数据库和从数据库中检索信息。目前Internet上流行的网站构架方式是LAMPLinux Apache MySQL Perl/PHP/Python的组合”经典技术组合即使用Linux作为操作系统Apache作为Web服务器MySQL作为数据库PHP作为服务器端脚本解释器。提供了包括操作系统、数据库、网站服务器、动态网页的一整套网站架设支持。而面向更大规模级别的领域中如数据库中的Oracle、DB2、PostgreSQL以及用于Apache的Tomcat JSP等都已经在Linux上有了很好的应用样本。除了已在开发者体中广泛流行它亦是现时提供网站务供应商最常使用的平台。由于这四个软件都是遵循GPL的开放源码软件因此使用这种方式不用花一分钱就可以建立起一个稳定、免费的网站系统。总之目前大部分国内金融、商业等企业都采用Linux系统因此在Linux上配置动态网站开发平台有极其重要的意义同时可以学习这一先进的技术与熟悉一个优秀的操作平台。胡亮《搭建基于Linux动态网站开发平台》第4页共19页1.2课程设计的目的本课程设计设主要目的是在Linux操作系统下完成搭建基于Linux动态网站开发平台。Linux提供了大量免费的应用软件所以我使用了基于Linux的完全免费的PHP技术的实现方法搭建了一
个支持数据库的完全免费的动态网站开发平台。通过该课程设计的学习总结Linux 网络系统课程的学习内容利用apachemysql和php以及相关的软件在Linux系统下配
置一个Web服务器并完善Web服务器的功能。1.3 相关概念简介1. MySQL MySQL 是一个小型关系型数据库管理系统开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低尤其是开放源码这一特点许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL的的网址是sql。MySQL使用C和C编写并使用了多种编译器进行测试保证源代码的可移植性它支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统为多种编程语言提供了API。而且MySQL支持多线程充分利用CPU资源采用优化的SQL查询算法有效地提高查询速度。它.既能够作为一个单独的应用程序应用在客户端服务器网络环境中也能够作为一个库而嵌入到其他的软件中提供多语言支持。此外MySQL提供TCP/IP、ODBC和JDBC等多种数据库连接途径提供用于管理、检查、优化数据库操作的管理工具可以处理拥有上千万条记录的大型数据库。2. Apache Apache是世界使用排名第一的Web服务器。它可以运行在几乎所有广泛使用的计算机平台上。Apache源于NCSAhttpd服务器经过多次修改成为世界上最流行的Web服务器软件之一。Apache取自“a patchy server”的读音意思是充满补丁的服务器因为它是自由软件所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定并可做代理服务器
来使用。胡亮《搭建基于Linux动态网站开发平台》第5页共19页Apache服务器拥有以下特性支持最新的HTTP/1.1通信协议拥有简单而强有力的基于文件的配置
过程支持通用网关接口支持基于IP和基于域名的虚拟主机支持多种方式的HTTP认证集成Perl处理模块集成代理服务器模块支持实时监视服务器状态和定制服务器日志支持服务器端包含指令SSI支持安全Socket层SSL提供用户会话过程的跟踪支持FastCGI通过第三方模块可以支持Java Servlets。APACHE没有为管理员提供图形用户接口GUI 但最近的APACHE版本已经有了GUI的支持1。如果你准备选择Web服务器毫无疑问Apache是你的最佳选择。/是它的。3. PHP PHP一个嵌套的缩写名称是英文超级文本预处理语言PHP:Hypertext Preprocessor的缩写。PHP 是一种HTML 内嵌式的语言PHP与微软的ASP颇有几分相似都是一种在服务器端执行的嵌入HTML文档的脚本语言语言的风格有类似于C语言现在被很多的网站编程人员广泛的运用。PHP 独特的语法混合了C、Java、Perl 以及PHP 自创新的语法。它可以比CGI 或者Perl 更快速的执行动态网页。用PHP做出的动态页面与其他的编程语言相比PHP是将程序嵌入到HTML文档中去执行执行效率比完全生成HTML标记的CGI要高许多与同样是嵌入HTML文档的脚本语言JavaScript相比PHP在服务器端执行充分利用了服务器的性能PHP执行引擎还会将用户经常访问的PHP程序驻留在内存中其他用户再一次访问这个程序时就不需要重新编译程序了只要直接执行内存中的代码就可以了这也是PHP高效率的体现之一。PHP具有非常强大的功能所有的CGI或者JavaScript的功能PHP都能实现而且支持几乎所有流行的数据库以及操作系统。4.S
amba Samba是一套让UNIX系统能够应用Microsoft网络通讯协议的软件。它使执行UNIX系统的机器能与执行Windows系统的电脑分享驱动器与打印机。Samba属于GNU Public License简称GPL 的软件因此你可以合法且免费地使用它。Samba的主要功能是提供Windows NT风格的文件和打印机共享解析NetBIOS名字IP提供SMB客户功能备份PC上的资源提供一个命令行工具在其上可以有限制地支持NT的某些管理功能。胡亮《搭建基于Linux动态网站开发平台》第6页共19页 2 MySQL数据库服务器的安装及其设置2.1获得MySQL 软件从MySQLsql/ 下载MySQL的源代码打包文件后缀名为当前最新版本为5.0.51a。 2.2熟悉MySQL 的安装流程在UNIX 上安装MySQL涉及下列步骤 1 创建一个用户的UNIX 账号和服务器将操纵的组如果正在安装服务器。2 获得和打开想安装的分发包。如果使用的是源代码分发包编译并安装它。 3 运行mysql_install_db 脚本来初始化数据目录和权限表仅允许第一次安装。 4 启动服务器。5 熟悉一般的管理过程。特别应该阅读服务器设置和关闭以及作为无特权用户运行服务器的段落。2.3 MySQL数据库服务器的安装在进行编译和安装之前必须确认当前的Linux操作系统当中至少安装了一种C语言编译器如cc 或gcc。如果没有安装请安装后继续下面的步骤。假设所有软件的下载目录为root 用户的宿主目录即“/root”目录。 1. 解压缩包用以下命令进行解压缩包操作rootlocalhost root tar zxvf mysql-5.0. 图2.1 解压缩包解压缩完成后会生成一个“mysql-5.0.51a”的源代码目录。2. 软件配置、编译和安装胡亮《搭建基于Linux动态网站开发平台》第7页共19页切换到源代码目录进行软件安装前的配置、编译和安装命令为rootlocalhost root cd mysql-5.0.51a rootlocalhost mysql-5.0.51a groupadd mysql rootlocalhost mysql-5.0.51a useradd -g mysql mysql rootlocalhost
mysql-5.0.51a ./configure - -prefix/usr/local/mysql rootlocalhost mysql-5.0.51a make rootlocalhost mysql-5.0.51a make install rootlocalhost mysql-5.0.51a
scripts/mysql_install_db rootlocalhost mysql-5.0.51a chown -R root /usr/local/mysql rootlocalhost mysql-5.0.51a chown -R mysql /usr/local/mysql/var rootlocalhost
mysql-5.0.51a chgrp -R mysql /usr/local/mysql rootlocalhost mysql-5.0.51a cp
support-files/my-mediumf /etc/myf 图2.2 软件配置、编译和安装用如下命令启动MySQL数据库如果操作系统默认安装的有MySQL数据库请确认其没有启动rootlocalhost mysql-5.0.51a /usr/local/mysql/bin/safe_mysqld --usermysql amp 图2.3
启动MySQL数据库胡亮《搭建基于Linux动态网站开发平台》第8页共19页将上面的启动命令追加到文件“/etc/rc.d/rc.local”的尾部使操作系统启动时就自动启动MySQL数据库服务器。2.4 MySQL服务器的初始设置新安装的MySQL服务器没有作相关的权限设置必须手工设置。在命令行中使用如下命令rootlocalhost root
/usr/local/mysql/bin/mysql 图2.4 进入mysql操作界面进入MySQL客户端工具的操作界面接着执行如下的操作mysqlgtdrop database test mysqlgtuse mysql mysqlgtdelete from user where user mysqlgtdelete f
rom user where host mysqlgtdelete from db 图2.5 设置MySQL权限现在MySQL数据库将只允许本机的MySQL管理员root用户和操作系统的root用户不同连接用如下命令为root用户指定密码胡亮《搭建基于Linux动态网站开发平台》第9页共19页rootlocalhost root cd /开发一个平台需要多少钱
usr/local/mysql/bin/ rootlocalhost bin ./mysqladmin -u rootlocalhost password 123456
图 2.6 设置root用户密码上面命令中“123456”为root用户密码请根据实际情况变动。 2.5 新建数据库及其权限设置用如下命令新建数据库“mydb”并进行权限设置rootlocalhost bin ./mysql -u root -p mysqlgtcreate database mydb mysqlgtgrant all privileges on mydb. to mydblocalhost identified by mydb mysqlgtexit rootlocalhost
bin ./mysqladmin -u rootlocalhost -p flush-privileges 图2.7 新建数据库mydb并设置权限上述命令创建了“mydb”数据库并且把它的所有权限赋予“mydb”用户密码为“mydb”只能从本机登录数据库。胡亮《搭建基于Linux动态网站开发平台》第10页共19页 3 Apache和PHP的安装与配置3.1 Apache和PHP软件的获得从Apache 下载Apache的源代码打包文件后缀名为当前最新版本为1.3.28和2.2.8本文主要介绍1.3.28版本。从PHP
www.php下载PHP的源代码打包文件后缀名为当前最新版本为5.2.5。
3.2 Apache和PHP的安装Apache和PHP的继承安装时有两种模式1. 解压缩包用以下命令进行解压缩包操作rootlocalhost root tar zxvf apache_1.3. rootlocalhost root tar zxvf php-5.2. 图3.1 解压缩包解压缩完成后会生成“apache_1.3.28”和“php-5.2.5”两个源代码目录。2. 软件配置、编译和安装切换到源代码目录进行软件的配置、编译和安装命令为rootlocalhost root cd apache_1.3.28 rootlocalhost apache_1.3.28./configure - -prefix/usr/local/apache --enable-moduleso rootlocalhost apache_1.3.28 make rootlocalhost apache_1.3.28 make install 胡亮《搭建基于Linux动态网站开发平台》第11页共19页rootlocalhost apache_1.3.28 cd ../ php-5.2.5 rootlocalhost php-5.2.5./configure --enable-track-vars
--with-mysql/usr/local/mysql --with-apxs/usr/local/apache/bin/apxs rootlocalhost
php-5.2.5 make rootlocalhost php-5.2.5 make install rootlocalhost php-5.2.5 cp
php.ini-dist /usr/local/lib/php.ini 图3.2apache和php配置、编译、安装3. Apache和PHP 的基本配置和测试编辑Apache的配置文件“/usr/local/apache/f”添加下
面一行内容AddType application/x-httpd-php.php 并且将“DirectoryIndex index.html”一行修改为DirectoryIndex index.html index.htm index.php 编辑PHP配置文件
“/usr/local/lib/php.ini”将“register_globals Off”一行内容改为胡亮《搭建基于Linux 动态网站开发平台》第
12页共19页register_globalsOn 用如下命令启动Apache并且加入到文件“/etc/rc.d/rc.local”中rootlocalhost root /usr/local/apache/bin/apachectl start 在目录“/usr/local/apache/htdocs/”下创建test.php文件内容如下ltphp phpinfo gt
在浏览器中输入地址“your_ip/test.php”your_ip为服务器的IP地址即可看到PHP 的基本配置信息并且有MySQL数据库的相关支持信息。若未看到则配置有问题需要检查以上步骤。3.3搭建快速开发平台为了充分利用Windows平台下丰富的应用软件我们将在Linux中使用Samba服务器和Windows主机通信。网页和相关的PHP程序文件在Windows下开发后直接存储在Linux服务器上无需使用FTP等其它工具上传。胡亮《搭建基于Linux动态网站开发平台》第13页共19页首先确认当前的Linux 操作系统安装了Samba软件包若没有安装请安装后继续下面的步骤。编辑Samba的配置文件“/etc/f”在尾部添加如下内容homepage path
/usr/local/apache/htdocs valid users php public no writable yes printable no create mask 0765 图3.3修改配置文件使用如下命令添加系统用户和Samba用户rootlocalhost rootadduser php rootlocalhost rootsmbadduser php:php 需要输入Samba密码在Windows中登录Samba服务器时使用胡亮《搭建基于Linux动态网站开发平台》第14页共19页 3.4 添加系统和Samba用户用如下命令启动Samba服务器rootlocalhost root /etc/rc.d/init.d/smb start 使用如下命令使Samba服务器每次开机自
动启动rootlocalhost root chkconfig --level 3 smb on 在Windows客户端建议使用Windows NT/2000使用服务器的IP地址“搜索计算机”。到后双击计算机图标在弹出对话框的用户栏输入“php”密码框中输入使用“smbadduser”命令设置的Samba密码。接着会看到Samba服务器共享出来的目录“homepage”在图标上点鼠标右键选择“映
射网络驱动器”即可映射为本地的一个逻辑盘符。接下来的所有网页和程序都可以通过磁盘符直接存储在Linux服务器上。胡亮《搭建基于Linux动态网站开发平台》第15页共19页 4 测试 4.1基本设定 1. 激活apache 服务基本上只要激活apache 之后应该就可以在客户端的浏览器程序上看到主机预设的网页。同时apachectl 还有其它的参数如下apachectl stop停止WWW 的服务apachectl restart重新激活WWW 的服务这个指令比较常用在修改了apache 的参数后重新激活用的。apachectl status侦测WWW 的状态。2. 更改中文首页由于WWW 的原始设定中指定首页名称为index.html 或者是index.htm 然而这一版的首页支持比较多的语言因此必须将首页文件名称修改一下3. 设定自动执行另外为了让WWW 及MySQL 服务可以一开机就执行所以可以将下面两行激活的scripts 写在
/etc/rc.d/rc.local 的最后.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论