怎么自己架设服务器?

怎么自己架设服务器?,第1张

果要用IIS搭建WEB服务器的话,先做准备工作:下载好IIS6 for2003或者准备好2003安装盘,再继续下面的工作:
第一步:默认情况下IIS6是没有安装在Windows2003系统中的,所以我们需要手动安装这个组件,通过任务栏的“开始->程序->管理工具->配置您的服务器向导”来启动安装步骤。
第二步:出现欢迎使用“配置您的服务器向导”提示后点“下一步”按钮。
第三步:系统会给出准备安装各类组件所需要的所有准备工作,我们继续点“下一步”按钮。
第四步:系统自动搜索已在本机安装了的系统服务组件。
第五步:搜索完毕会在“服务器角色”窗口显示已在本机安装的系统服务以及没有安装的服务,区别在于“已配置”处用“是”和“否”进行区分。读者可以看到“应用程序服务器(IIS,ASPNET)”组件是没有安装的,我们需要安装他
第六步:点“下一步”按钮后会出现应用程序服务器选项,在这里会让我们选择是否安装IIS相关的其他工具,包括frontpage server extension以及aspnet。如果我们想安装可以在前面打勾。点“下一步”继续
第七步:系统将显示出整个IIS组件的大概过程列表。
第八步:接着开始安装并配置IIS程序。
第九步:系统将自动调用安装程序进行安装,建立文件列表。
第十步:在安装过程中会d出提示要求插入标为windows server 2003的安装光盘到光驱中。这是因为默认情况IIS组件的程序与文件是存储在windows 2003光盘中的,所以需要我们插入光盘。
第十一步:点“取消”,浏览选择刚才下载的IIS文件夹
第十二步:等待大概5分钟所有系统就完成了IIS6组件的安装工作,会d出此服务器现在是一台应用程序服务器的提示。我们点“完成”按钮完成全部安装工作。
第十三步:安装完后我们在“管理您的服务器”窗口中就会发现“应用程序服务器”已经出现在该界面中了。我们也可以通过“开始->程序->管理工具”中找到“Internet 信息服务(IIS)管理器程序”的踪影了。
第十四步:虽然我们安装完IIS组件,但还有一些必要的工作要做。因为这些 *** 作是必须的,如果不设置这些参数在日后使用中会出现莫名其妙的错误,所以笔者也将这些设置放在安装IIS的 *** 作中了。我们通过“开始->程序->管理工具->Internet 信息服务(IIS)管理器程序”启动IIS程序。

我们在安装lnmp一键安装的时候,一般都没有开启访问pathinfo模式
这种模式在比较多的框架中用到,比如国人的ThinkPHP,还比如C写的Yaf也用到,不支持就比较可惜了。
pathinfo的原理就是将indexphp/xxxx/xxx类似的网址当做php来执行,并且需要将xxx/xxx写入到$_SERVER[‘PATH_INFO’]中
这个是lnmporg(我装的就是这个,所以我以这个为例子)开出来的虚拟机的配置中的一段(vhost/conf),修改nginx配置文件也是这样修改
location ~ \(php|php5)$
{
try_files $uri =404;
fastcgi_pass unix:/tmp/php-cgisock;
fastcgi_index indexphp;
include fcgiconf;
}
大家明显看到,location中的正则中,写了一个$,悲剧了,表示就此结束(表示前面的php只匹配一次,这个只是随便提提)
最终,应该如此处理(location哪里也修改了,因为我没有用到php5处理):
if (!-e $request_filename)
{
rewrite ^\/()$ /indexphp/$1 last;
break;
}
location ~ \php
{
try_files $uri =404;
fastcgi_pass unix:/tmp/php-cgisock;
fastcgi_index indexphp;
include fcgiconf;
set $path_info "";
set $real_script_name $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(+\php)(/+)$") {
set $real_script_name $1;
set $path_info $2;
}
fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
fastcgi_param SCRIPT_NAME $real_script_name;
fastcgi_param PATH_INFO $path_info;
}
后面的部分处理我是参考的网络上搜索到的文档,带注释版告诉大家
location ~ \php
{
try_files $uri =404;
fastcgi_pass unix:/tmp/php-cgisock;
fastcgi_index indexphp;
include fcgiconf;
set $path_info "";#初始化一个变量
set $real_script_name $fastcgi_script_name;#初始化一个变量,并且获取到一个原始赋值
if ($fastcgi_script_name ~ "^(+\php)(/+)$") {#检测如果php后面还存在/开始参数,将参数处理
set $real_script_name $1;#将第一个正则子串匹配到的赋值
set $path_info $2;#将第二个正则子串匹配到的赋值
}
fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;#修改SCRIPT_FILENAME值
fastcgi_param SCRIPT_NAME $real_script_name;#修改SCRIPT_NAME值
fastcgi_param PATH_INFO $path_info;#修改PATH_INFO值
#上述三个赋值都是replace into的模式,这些值都是写在fcgiconf中
}
摘自:>是的。用它学习php是很方便的。
其它类似的程序也有很多,比如
USBWeb
XAMPP
Phpnow
UPUPW
PHPStudy
lnmp包
等等


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/12589995.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-08-26
下一篇2025-08-26

发表评论

登录后才能评论

评论列表(0条)

    保存