论坛: 网站建设 标题: 请问:我自设服务器,要是再申请一域名,可自建网站吗? 复制本贴地址    
作者: kk2003 [kk2003]    论坛用户   登录
aoming认为到目前为止,问题已有明确答案,本贴已被冻结,不再接受更多的回复

要是可行,我的IP要是改变,是否可修改IP指针来实现用户的访问指向:????

地主 发表时间: 08/09 21:13

回复: tommy_he [tommy_he]   版主   登录
不是很麻烦吗?
你自己的机器拿来当服务器不是就要24小时开着了?那还要转向干什么呢!?又不下线就没有改变的可能了嘛!

B1层 发表时间: 08/09 22:18

回复: kk2003 [kk2003]   论坛用户   登录
那就是说可行了?????

要是下线了,我是否可以再重新指向??????

B2层 发表时间: 08/09 23:03

回复: Aoming [aoming]   版主   登录
即使你没有域名,也可以建设网站~~
但域名的作用却是非常重要的。

用你自己的电脑做服务器可行。至于解决IP的动态分配问题,可以参考 http://www.88ip.cn

使用花生壳等软件

B3层 发表时间: 08/09 23:10

回复: kk2003 [kk2003]   论坛用户   登录
没域名,你家如如上来???????请指点,没可能给IP吧。。。。

B4层 发表时间: 08/09 23:12

回复: Aoming [aoming]   版主   登录
引用:
我的IP要是改变,是否可修改IP指针来实现用户的访问指向:????

如果你的电脑连接入网络后,IP是不固定的,那么你每接入网络一次,IP几乎都是不同的。而不管你什么时候接入网络,只要你服务器运行了,你都可以通过相应的协议+IP地址+端口号访问你的服务
你说的应该是web服务器,那么启动了它后,任何人都可以在浏览器地址栏上打入 http://xxx.xxx.xxx.xxx/ 来访问你的网站

没有看明白你说的IP指针是什么意思,以及用户的访问指向有是什么意思。


B5层 发表时间: 08/09 23:28

回复: kk2003 [kk2003]   论坛用户   登录
    非常多谢版主的耐心回答!!!!!

    我是很菜的,请谅解。

    现在上网IP地址每次不同,要是不下线的话就没问题了,但这不可
能。。。。我想问的是,1。申请了国际域名。COM的情况,2。没有国
际域名的情况。

1。有。COM:由于服务器主机在自家,IP地址会改变(每一次下线),
            要是这样别人打上蜮名能找到我的主机吗?要如何操作?

2。没有国际域名:
   A。有免费的二级域名*。*。COM(好象有)
   B。什么都没有

谢谢。。。。

B6层 发表时间: 08/10 00:23

回复: kk2003 [kk2003]   论坛用户   登录
    请不要见笑,我是想用最少的资源(费用)搞一个属于自已的网
站,或许是要试试做站主的滋味,因为我很菜,一定会让人黑的,只
是想从中学习学习。。。。。。

B7层 发表时间: 08/10 00:46

回复: Aoming [aoming]   版主   登录
1、可以,但是你需要使用一个叫动态域名解析的软件,目前有“花生壳”之类的,具体你可以到 http://www.88ip.cn 等与该类软件相关的站点翻阅,有详细的说明。注册或者付费后,别人可以实现通过打入域名访问你的服务器;
2、A。 二级域名?。。好象通过上述软件不行吧。。我不敢乱答复
   B。 原则上还是有办法实现的,比如我构思可以这样

    你先需要有一个固定IP的主机,比如一个支持CGI的虚拟主机,作为服务端,然后写一组C/S的程序,
客户端程序实现如下功能――随电脑启动而启动(或者随拨号接入成功而启动),每次启动自动捕获本机IP地址,然后发IP地址发向虚拟主机服务端;
服务端程序放在虚拟主机上,包含如下内容――
一个记录文件记录你电脑的IP最新地址;
一个CGI脚本程序等候客户端程序的激活,激活后接收发送来的IP地址,更新记录文件中IP地址;
一个CGI脚本程序(甚至纯HTML页面也可以,不过需要前一个CGI脚本直接更改这个HTML中的IP地址,相关HTML标签用<meta>)用来做URL转向,你以后统统可以输入这个URL,比如http://webside.com/myside/ 自动指向你的电脑的IP了


也就说需要做3个关键处理:1、如果捕获启动进程(这个建议请教编程破解)2、如何获得本机IP并发送到固定地址的虚拟主机激活脚本;(这个很容易实现,一个基本的Perl的socket编程足以) 3、虚拟主机上的CGI脚本如何正确处理并更改IP记录文件(这个说起来也容易,可是也要象计数器统计那样考虑到锁定文件之类的问题)


B8层 发表时间: 08/10 01:54

回复: Aoming [aoming]   版主   登录
邪・安那里有些可用的资料,我回头明天给你找来,现在不行了,快50个小时没有合眼了,明天还要过生日呢,啊不对,是今天。呵呵

B9层 发表时间: 08/10 02:08

回复: kk2003 [kk2003]   论坛用户   登录
谢了,生日快乐。。。。。

B10层 发表时间: 08/10 02:33

回复: Aoming [aoming]   版主   登录
作者: 邪・安 [xiean]

用于ChinaDNS注册过域名,并拥有MyDNS的用户想在BSD或其它*nix系统上实现动态域名指向的代码

B11层 发表时间: 08/10 22:18

回复: admin_20cn [admin_20cn]   论坛用户   登录
你自己建一个服务器,那么只有你再线别人才能登陆你的网页
这样的话你可以先到126.com申请一个域名
把转向指向你的ip,以后每次上网,先登陆126.com把ip改为你当前ip
虽然有点麻烦,但是是免费的

B12层 发表时间: 08/11 15:56

回复: ingtai [ingtai]   论坛用户   登录
 Aoming

总是很认真!!!

B13层 发表时间: 08/12 09:14

回复: Aoming [aoming]   版主   登录
下面是下午清理硬盘的时候发现的,忘记从那里来的了。还未来得及把它理顺,正好和这个话题有关。paste之,谁有兴趣先帮忙整理测试一下吧。我系统有点问题,先闪了

==============================================

#!/usr/bin/perl 
################################################
# perl实现域名跳转 作者:gbnis 已阅读次数:221 
# 用PERL制作简单的二级域名跳转程序 
# 相信大家都申请过某些站点上提供的免费二级域名,例如网易的youname.yeah.net、youname.126.com等,这是用什么方法来实现的?
# 现在我就用一个简单的二级域名跳转程序来为大家解开这一头雾水。
# 首先让我们来看看下面的程序,下面的方法是通过默认首页来调用CGI程序达到判断分析并跳转,
# 我们把一页面置于默认的首页(底下有介绍)当我们访问站点时例如:http://www.cpcw.com的时候,默认首页通过JAVASCIPT调用CGI程序,
# 在程序里我们通过环境变量取得浏览器里输入的URL,对URL通过判断,得出是否二级域名,如果是二级域名就打开我们存储二级域名的文本,
#获取制定的URL,然后跳转。如果不是二级域名,就跳转到程序里设置的页面。这样,一个简单扼要的二级域名跳转程序就实现了。 
############################3
####程序开始#### 
$myurl="cpcw.com"; # 变量赋值 域名的后序 
$head="/home/cpcw/"; # 变量赋值 纪录域名文档的目录路径 
$urlfile="file.txt"; # 变量赋值 纪录域名文档文件名 
$myhome= "http://www.cpcw.com/main.htm"; # 变量赋值 主页的真实URL 
@geturl = split(/&/, $ENV{'QUERY_STRING'});#使用split函数拆分脚本参数或者表单输入项,然后赋予@ocpurl 
foreach (@geturl) { 
($name,$value) = split(/=/, $_); 
&setfrom($name, $value); 
}#循环拆分数组@geturl把其中的值分别赋予变量name和value并调用子程序setfrom对变量加以处理 
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); 
@pairs = split(/&/, $buffer); 
foreach (@pairs) { 
($name, $value) = split(/=/, $_); 
&setfrom($name, $value); 
}#读取用POST递交的表单, 标准输入口的字节数,循环拆分字节赋予变量name和value并调用子程序setfrom对变量加以处理 
$url =&getvar('url' ,'n|‖'); 
$id =&getvar('id' ,'n|‖'); 
$url ="$myurl" if (!($url =~ /.*:.*..*/ ));#从递交的表单里提取相对应的值赋予变量 
$userip=$ENV{'REMOTE_ADDR'};#提取递交脚本的主机IP地址赋予变量 
$url=~s/Http:////g; 
$url=~s/HTtp:////g; 
$url=~s/HTTp:////g; 
$url=~s/HTTP:////g; 
$url=~s/http:////g; 
$url=~s/hTTP:////g; 
$url=~s/htTP:////g; 
$url=~s/httP:////g; 
$url=~s/hTtP:////g; 
$url=~s/HtTp:////g; 
$url=~s/HttP:////g; 
$url=~s/hTTp:////g; 
$url=~s/HTtP:////g; 
$url=~s/htTp:////g; 
$url=~s/HtTP:////g; 
$url=~s/hTtp:////g; 
#把所有可能输入的http://方式都替换成空 
if (/$url/i != ~$myurl){ 
&error("域名不正确"); 
exit 0; 

@name1=split(/./,$url); 
$name2=$name1[0]; 
$name2=~tr/A-Z/a-z/; 
#对从浏览器输入的$url变量做一些处理 
open (FILE,"$head$urlfile"); 
@line=<FILE> 
close (FILE); 
#打开我们存储数据的文件并作赋值给@line 
foreach (@line){ 
@line1=split(/|/,$_); 
if ($line1[0] eq $name2){ 
$urllink=$line1[1]; 


if ($url =~/^$myurl/i){ 
$urllink=$myhome; 

if(!($urllink)){ 
printf "无该域名"; 
exit 0; 

print "Location: $urllinknn"; 
exit 0; 
sub setfrom {#对变量$name和$value做一些处理和过滤 
$name=$_[0]; 
$value=$_[1]; 
$name=&de($name); 
$name=&filter($name); 
$value=&de($value); 
$value=&filter($value); 
if ($FORM{$_[0]}) {$FORM{$_[0]}="$FORM{$_[0]}§$_[1]";} 
else {$FORM{$_[0]}=$_[1];} 

sub de{ 
local($return)=$_[0]; 
$return =~ tr/+/ /;#将加号转换成为空格 
$return =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; 
#将字符转换成指定格式,将十六进制值变成对应的字符。 
$return =~ s/n/<br>/g;#把所有的n转换成<br> 
return $return; 

sub filter{#对$return做过滤 
local($return)=$_[0]; 
$return =~ s/<!--(.|n)*-->//g; 
if ($allow_html != 1) { 
$return =~ s/<([^>]|n)*>//g; 
$return =~ s/<//g; 

return $return; 

sub getvar {#从表单里取值的子程序 
local($return)=""; 
$return="$FORM{$_[0]}" if ($FORM{$_[0]}); 
$return=~ s/$_[1]//g; 
return $return; 


  以上的程序还要配合一个HTML页面来实现,我们需要把这页面做为首页,他会通过Javascript代码自动连接 
我们上面的程序,程序通过判断,分析是否是二级域名,如果是就打开我们的存储文件查找并做跳转。 
<html> 
<head><script language="Javascript"> 
NonJava =document.URL; 
NON="">"; 
document.write('<meta HTTP-EQUIV="REFRESH" CONTENT="0;URL=http://www.cpcw.com/name.cgi?url='+NonJava+NON); 
</script> 
<title></title> 
</head> 
<body> 
</body> 
</html> 
域名资料存储文件格式如下 
www|http://www.cpcw.com| 
bbs|http://www.cpcw.com/bbs/| 
......... 

  技巧总结:通常我们看到我们申请的二级域名有这么一选项(隐藏地址栏、不隐藏地址栏)我们以上的程序只是跳转,
并无实现真实的二级域名,我们可以通过HTML页面里的一些小技巧来实现,我们需要做一个模板页。
程序通过调用这模板页实现让大家看到的状态栏还是例如:HTTP://BBS.CPCW.COM,模板页做成框架的形式,上面设置为一针,
下面显示你所跳转的页面,这样你不管如何点击链接,浏览器上面的URL就怎么也不会变化!通过这种办法可以实现让人看起来是真的虚拟二级域名。 
=====================================================

B14层 发表时间: 08/13 00:14

回复: xiean [xiean]   论坛用户   登录
8错,上面的代码我没试,不过原理就是这样,缺点就是只能用于网页服务的域名指向,无法用于其它服务,偶那个可以用于所有的服务,可缺点就是必须要在chinadns注册域名

B15层 发表时间: 08/13 18:09

回复: Aoming [aoming]   版主   登录
找到一个关于自动启动网络服务的资料,参考的《Perl网络编程》P273。适用于winNT/2K下

先把方法附上,
======================
这里是将应用程序转化为守护进程,使用winNT/2K上的“Services”系统。但需要2个实用程序:instsrv.exe和srvany.exe。但它们不是标准的winNT/2K发行版的一部分,而是winNT/2K Resource Kits提供的附件。
1)首先使用instsrv.exe定义新服务
eg:
c:\rkit\instsrv.exe PROGRAM c:\rkit\srvany.exe
2)使用注册表编辑器将定义的服务和perl脚本的名字和命令行参数关联在一起
HKEY_LOCAL_MACHIHE\SYSTEM\CurrentControlSet\Services\PROGRAM
增加 Parameters主键及Application及AppParameters子键
Application→包含到Per的可执行路径
AppParameters→包含传递给Perl的参数(脚本名和脚本参数)
                     
3)进入控制面版,计算机管理――services,将刚才设置的PROGRAM设置为系统引导时自动启动
(也可用命令行 NET STAT PROGRAM 启动)
====================================

更多关于instsrv.exe和srvany.exe的信息,可以到google上搜索。比如刚才去找找到个现成的步骤说明。连程序下载也附带了:
========================================
把一个普通应用程序变为win2000(NT)中的服务


下载相关程序 srvany.exe instsrv.exe
http://postboy.myetang.com/files/srvany.exe http://postboy.myetang.com/files/instsrv.exe

下载上面的两个文件,放在c:\winnt 或别的地方。
打开命令行程序CMD.exe (或命令行窗口)。
输入: c:\>instsrv "服务的名称" c:\winnt\srvany.exe 回车
运行注册表程序 regedit.exe
建立 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\"服务的名称" 子项。
选"服务的名称",按右键,新建“项”。
取名: Parameters 。
选择 Parameters 项,再新建“字符串值”。
“字符串值”取名: Application 。
改 Application的值为应用程序的路径及文件名(比如 C:\winnt\i386.exe) 。
选择 Parameters 项,再新建“字符串值”。
“字符串值”取名: AppDirectory 。
改 Application的值为应用程序的路径 (比如 C:\winnt) 。
关闭注册表程序,打开控制面板-〉管理工具-〉服务。
选择"服务的名称",选择“属性”。
选择"登陆"页,在"允许服务与桌面交互"前打勾。
启动服务。ok!
如果出现命令行程序界面,
则把"允许服务与桌面交互"前的勾去掉,然后重新启动服务。

[此贴被 Aoming(aoming) 在 09月06日02时19分 编辑过]

B16层 发表时间: 09/06 02:00

回复: hackerkill [hackerkill]   论坛用户   登录
今天要感谢了!收获不小啊

B17层 发表时间: 09/08 21:46

回复: Aoming [aoming]   版主   登录
有兴趣的话把上面的东东完成吧,做出来也算是一个小开发了,做点贡献吧,最近太忙了~

B18层 发表时间: 09/10 00:42

回复: gerry [gerry]   版主   登录
受教

B19层 发表时间: 09/12 10:14

回复: langwen [langwen]   论坛用户   登录
不用那么复杂,用花生壳一切都可以搞定

B20层 发表时间: 05-05-21 01:05

回复: php [php]   论坛用户   登录
晕死了!你们这些所谓的高手给一个新手讲这些东西有什么用啊!
――――――
反正我是大部都看不懂!
我是新手,我先说一下我自己是怎么考虑的。
首先你必须有一台能提供WEB服务的机器,
其次你要保证你的上网IP是公网IP,
假如是公网IP,就很简单了,花生壳就可以搞定!
假如不是公网IP,如(192.168.*.*系列或10.*.*.*系列)那就麻烦一些。
++假如你在局域网内通过代理服务器上网,你可以请网管在服务器上给你做一个映射!指向你自己的服务器。
++假如你是通过带路由的adsl猫共享上网,你可以在猫上做端口映射,也很简单,如果你的猫不带路由功能,你可以换一个猫。
============
以上所有前提是能保证获得公网IP,否则以你的水平除了用钱外不用再考虑其它的办法了!!
============
说得乱七八糟,不知所谓,不知能不能帮上忙。
==========
本人小站http://weifangphp.vicp.net:81

B21层 发表时间: 05-05-26 08:10

回复: Aoming [aoming]   版主   登录
楼上的,你可以象一个奴隶一样只关注应用。

B22层 发表时间: 05-05-27 08:54

回复: bassjack [bassjack]   论坛用户   登录
不知道建站是什么样的一个概念,IIS服务下的调试算不算建站啊?


B23层 发表时间: 05-07-27 13:16

回复: poemail [poemail]   论坛用户   登录
顶,收藏先

B24层 发表时间: 05-07-31 19:40

回复: acheron [acheron]   论坛用户   登录
引用一下:

  回复: Aoming [aoming]    版主 回复  收藏 
楼上的,你可以象一个奴隶一样只关注应用。


--------------------------------------------------------------------------------
挺立在孤独失败与屈辱的废墟上

B22层 发表时间: 05-05-27 08:54




说点题外话哦

板猪说的话有点过头了哦,
在这个论坛也好,在中国社会上也罢,应用级别的用户远比搞开发的人多。
你能说 这些用户都是奴隶?
如果你说是,那你自己写个操作系统出来,你造一台电脑出来!
凡事不能较真,虽然你是板猪,说话也要尊重人啊。
不懂得尊重别人,怎能让人尊重你呢?
做事要先做人!

B25层 发表时间: 05-08-14 14:00

回复: kailangq [kailangq]   版主   登录
小A,我为你鼓掌,双脚也加上

B26层 发表时间: 05-09-07 18:21

回复: Aoming [aoming]   版主   登录
黄泉说的有一定道理。我首先为自己说的上面过激话的道歉。
另外,我想说用户可以只关心结果,而admin需要关心过程。用户可以不用去理会TCP/IP是怎么回事,admin则有必要一定程度到掌握。至于来这里把自己当作是什么角色,完全是个人行为。但是这个版块,我希望大家都是admin。直接告诉使用花生壳算是一种解决方案,对象是用户。而上面花的那么多口水被说成是没用就让人有点恶心了,因为他以为对象还是用户。
最后说下,尊重与否各人心里都有个底线。

B27层 发表时间: 05-09-07 19:11

回复: poemail [poemail]   论坛用户   登录
好东西,收藏先!

B28层 发表时间: 05-09-26 21:44

回复: amr [amr]   论坛用户   登录
WINDOWS怎么 设置

B29层 发表时间: 05-09-28 21:39

论坛: 网站建设

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号