热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

搭建个人网站

搭建个人网站--Linux企业应用-Linux服务器应用信息,下面是详情阅读。
在一个被Windows垄断的办公环境中使用Linux办公,你就是少数,你就不得不照顾大多数人的习惯,想办法“兼容”大多数人。
一个比较有效的办法就是把自己的计算机改造成简单的个人网络服务器,利用流行的网络服务解决与大多数人交流电子文档的问题。
下面将讨论如何基于红旗Linux桌面版配置服务器,提供WWW/FTP服务的问题。注意,这里的讨论只适合个人使用。如果要搭建企业级的服务器,需要考虑更多的问题,这里介绍的方法也许并不够充分。


用Apache提供简单Web服务


假设要建立一个个人Web网站,允许别人能通过内部局域网访问这个网站,阅读文档或下载软件。网站的网页文件都存在/mnt/WinD/www123下,首页文件名是 index.html,可供下载的软件存在/mnt/WinD/unixsoft下。

安装Apache 2.0.53

Apache 服务器软件安装包是一个tar包,可以下载得到。其中包含所有的源程序。2.0.53版的文件名是httpd-2.0.53.tar.gz,也有 httpd-2.0.53.tar.bz2的,只是压缩方式不同而已。在图形界面下,选中压缩包点鼠标右键,在弹出菜单中选择“解压”即可完成解压,形成 httpd-2.0.53目录。
在命令行方式下,转入httpd-2.0.53目录,configure,make,make install,make clean等命令就可以完成安装完了。为了方便,可以把这些命令用分号(;)隔开写成一行,如下所示。
./configure;make;make install;make clean
这样做之后,安装程序会自动在/usr/local中创建 apache2 目录,Apache服务器软件的所有配置文件和可执行文件就都保存在这里。如果要卸载,只需将 apache2 目录删除即可。有两点需要注意:第一,安装时必须使用root身份;第二,如果httpd-2.0.53目录处于系统自动挂装的非ext2/ext3分区,执行configure命令可能会出错,导致无法正常安装。如果httpd-2.0.53目录在ext2/ext3分区,就不会出现这个问题了。因此,建议把解压形成的httpd-2.0.53目录放在/root目录之下。

配置

接下来要修改配置文件/usr/local/apache2/conf/httpd.conf来控制服务器软件,使其按要求运行。
首先,修改Listen行,确定服务的IP地址和端口号:
Listen 10.1.30.147:80
说明:10.1.30.144是当前计算机的IP地址,通过80端口提供Web服务。 此项不特意设也可,默认端口就是80。
其次,修改DocumentRoot ,设定主页所在的根目录。修改后形成如下两行:
DocumentRoot "/mnt/WinD/www123"

第三,修改DirectoryIndex行,确认首页的文件名在其中。如果没有就追加上。
DirectoryIndex index.html index.html.var第四,增加一个Alias,把/mnt/WinD/unixsoft映射为网站根目录下的unixdown目录。增加的内容如下:
Alias /unixdown/ "/mnt/WinD/unixsoft"

Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all

上述四步配置的目的是使局域网的其他计算机能用http://10.1.30.144/这个网址访问我的...钥吹轿募?斜怼?

启动和关闭

安装配置好之后,运行下面的命令是就可以启动这个WWW服务器了。
/usr/local/apache2/bin/apachectl start
若要重启动这个WWW服务器
/usr/local/apache2/bin/apachectl restart
若要关闭WWW服务
/usr/local/apache2/bin/apachectl stop

自动启动

如果希望系统每次启动时自动启动httpd服务器,则还要做如下工作。
首先,拷贝apachectl 到/etc/rc.d/init.d/,并更名为httpd ,相应的命令是:
cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
然后,修改/etc/rc.d/init.d/httpd中的ARGV行,改成:
ARGV="start"
最后,在/etc/rc.d/rc5.d目录下,创建一个指向httpd的硬链接。相应的命令是:
ln /etc/rc.d/init.d/httpd /etc/rc.d/rc5.d/S85httpd
为了保证在字符模式下启动红旗也能提供Web服务,还要在/etc/rc.d/rc3.d目录下,创建一个指向httpd的硬链接。相应的命令是:
ln /etc/rc.d/init.d/httpd /etc/rc.d/rc3.d/S85httpd
支持PHP的Web网站


上面已经建立了简单的Web网站。很多情况下,这已经能满足了文档和软件共享的需要。但有些时候,还需要记录网站被访问的次数、软件的下载次数,甚至需要建立一个简单的留言簿。这时,就需要使Web网站支持某种动态网页。在Linux上,一种最流行的支持动态网页的搭配就是:Apache+PHP。
下面就讨论如何用Apache和PHP搭建支持PHP的Web网站。

安装Apache 2.0.53

关于Apache的安装前面已经做了介绍。但为了与PHP配合工作,Apache的安装操作会有所变化。
对比前面“简单Web服务”的安装操作,在执行configure指令时稍有不同,需要给configure增加参
数enable-so使其支持可装载模块和标准的MPM prefork。具体来说在命令行方式下,转入httpd-2.0.53目录后,执行如下命令进行安装。
./configure enable-so
make;make install;make clean

安装PHP 5.0.2

PHP软件安装包也是一个tar包,可以下载得到。文件名为php-5.0.2.tar.gz,解压方法与Apache的相同。需要注意的是,为了能正常编译,最好直接在ext2/3分区上进行解压。解压后会形成php-5.0.2目录。
转入该目录开始安装。
安装PHP前应关闭Apache。
安装时configure指令需要参数,这个参数说明了Apache具体的安装路径。
./configure with-apxs2=/usr/local/apache2/bin/apxs
make
make install;make clean
安装完成后,还需要把php的配置文件复制到合适的目录下,具体命令如下:
cp php.ini-dist /usr/local/lib/php.ini

配置Apache

关于Apache的配置前面已经做过一些介绍。显然,在搭建支持PHP的Web网站时这些配置仍需要做。
为了使其与 PHP配合工作 ,还要增加如下的配置。
首先,检查配置文件/usr/local/apache2/conf/httpd.conf中是否有如下的条目(一般来说,在安装php的过程中,都会自动增加),如果没有,一定要添加以便Apache在启动时可以自动加载php模块。
LoadModule php5_module modules/libphp5.so
其次,还要手工增加如下两个条目:
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps
第一条的含义是:如果文件扩展名为.php或.phtml,就要用PHP解析;第二条的含义是:如果文件扩
展名为.phps就按PHP语法高亮显示该源文件。
最后,还应该修改DirectoryIndex行,允许首页以index.php作为文件名。修改后的情况就是:
DirectoryIndex index.html index.php index.html.var

测试

做了上述配置后,这个Web网站就支持PHP了。可以编写一个简单的PHP文件phptest.php进行测试,
其中含有PHP语句即可。下面是一个例子:





echo "Hi, I´m a PHP script!";
?>


如果在浏览器上只显示了红色字体的文字,就说明该网站能正确解析PHP文件。
FTP服务


安装ProFTP 1.2.9

可以安装ProFTP来提供ftp服务。
可以下载得到ProFTP的安装包proftpd-1.2.9.tar.gz,先用tar命令解压。也可以在图形界面下,选中压缩包点鼠标右键,在弹出菜单中选择“解压”进行解压,形成后形成proftpd-1.2.9目录。
在命令行方式下,转入proftpd-1.2.9目录, 依次执行configure,make,make install,make clean等命令就可以完成安装完了。为了方便,可以把这些命令用分号(;)隔开写成一行,如下所示。
./configure;make;make install;make clean
ProFTP的安装程序会把配置文件proftpd.conf放在/usr/local/etc下,把可执行文件proftpd及 ftpshut 放在/usr/local/sbin下。

基本配置

在运行proftpd之前,需要对运行环境和proftpd的配置文件进行设置,以便该软件按要求运行。
首先,核实系统是否存在系统用户ftp的默认家目录,即/var/ftp这个目录。
/var/ftp这个目录是系统用户ftp的默认家目录,也是匿名ftp用户(anonymous)登陆后自动进入的目录。
如果没有/var/ftp,匿名ftp服务可能会有问题。
如果系统中没有/var/ftp这个目录,就应该创建它,并将其属主设成ftp。相应的命令如下:
mkdir /var/ftp
chown ftp.ftp /var/ftp
还有一种办法,就是修改系统用户ftp的属性,使其家目录指向其他已存在的目录。方法是:执行【开
始】→【设置】→【控制面板】→【本地用户和组】,找到ftp这个用户,选中它并点鼠标右键,执行弹出菜单的“属性”即可调出该用户的属性设置界面,在“主目录”中输入相应的目录,然后确定即可。
其次,修改proftpd的配置文件/usr/local/etc/proftpd.conf。
在配置文件中有User和 Group 项,是用来设定运行proftpd的身份的。其中,Group 项初始值设为
nogroup,而实际上红旗Linux4.1中并没有自动创建nogroup这个组,只有nobody这个组(其中有nobody用户)。因此,Group 项应改为
Group nobody
如果想给匿名用户开放写入权限,还应该修改配置文件中之间的Limit段改写成:

#DenyAll
AllowAll


用户权限控制

经上述配置后,当以匿名身份登陆时,只能访问系统用户ftp的家目录。读写权限由配置文件控制。如
果创建了普通用户帐户,也可以用这个帐户来登陆ftp服务,密码就用该用户登陆系统时所用的密码。此用户登陆后的读写权限与直接登陆系统时的权限相同。这意味着,该用户以ftp方式登陆后,对系统中绝大多数文件和目录都有读的权限,都可以下载!在大多数情况下,这是比较危险的。
如果希望普通用户以ftp方式登陆后被限制在其家目录内,就需要让配置文件/usr/local/etc/proftpd.conf
中的DefaultRoot ~生效。方法很简单,把DefaultRoot ~之前的井号(#)删除即可。

启动

执行proftpd命令,就可以启动proftpd,以stand-alone模式提供FTP服务。带完整路径的命令如下:
/usr/local/sbin/proftpd
如果希望proftpd能被自动启动,则应打开/etc/rc.d/rc.local,加入如下一行内容。
/usr/local/sbin/proftpd
这样,每次启动计算机后,proftpd都会被自动启动。

相关命令

关闭FTP服务
ftpshut now
此命令会在/etc下生成文件shutmsg。此命令仅仅是停止FTP服务,并不是关闭proftpd程序。
重新开放FTP服务
ftpshut -R now
直接把/etc/shutmsg删除也能产生相同的效果。
查看服务器在线人数
ftpcount
显示在线人员名单
ftpwho
推荐阅读
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文讲述了作者通过点火测试男友的性格和承受能力,以考验婚姻问题。作者故意不安慰男友并再次点火,观察他的反应。这个行为是善意的玩人,旨在了解男友的性格和避免婚姻问题。 ... [详细]
  • 本文介绍了使用PHP实现断点续传乱序合并文件的方法和源码。由于网络原因,文件需要分割成多个部分发送,因此无法按顺序接收。文章中提供了merge2.php的源码,通过使用shuffle函数打乱文件读取顺序,实现了乱序合并文件的功能。同时,还介绍了filesize、glob、unlink、fopen等相关函数的使用。阅读本文可以了解如何使用PHP实现断点续传乱序合并文件的具体步骤。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
author-avatar
手机用户2502881415
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有