Windows Server 2008 安装 XAMPP 环境

  1. 因为是学校配发的服务器,需挂vpn,且速度极慢。所以最好的方式是本地下载安装包后上传

​ 将windserver与本地建立共享盘:

​ 设置方式:

​ 显示选项--》本地资源--》详细信息

Xampp的安装

如果服务器东西不多的话,直接安装。如果东西较多的话,建议提前修改端口

修改文件:

Apache:

  1. httpd.conf:修改所有端口80,一般改为8080

  2. httpd-vhosts.conf:修改所有80端口为8080(不过该文件需要在路径中去寻找)

  3. httpd-ssl.conf文件中:修改端口443为4433

  4. 控制panel中有个服务器选项,最好一起修改掉

Xampp的命令行操作

在windowserver和Ubantu中类似,Apache服务器的集成环境,需要进入相应的bin文件

cd C:\xampp\apache\bin  (直接安装在C盘的话)

安装不同Apache服务器

在某些特殊情况下,需要测试安装不同端口的Apache服务器。

修改xampp文件中apache的conf配置文件端口号

执行以下操作命令:

文件:myconf-1.conf

httpd.exe -k install -f .\conf\myconf-1.conf -n myconf-1

或者:

httpd -k install -f .\conf\myconf-1.conf -n myconf-1

创建单独的默认根目录

默认根目录:"C:/website/xampp/htdocs"也就是htdocs文件

记住需要打开:apache\conf\httpd.conf,mod_dir 模块(文件中默认是打开的)

LoadModule dir_module modules/mod_dir.so

检查索引文件的优先级,越前面的优先级越高,反斜杠表示接续下一行:

<IfModule dir_module>
   DirectoryIndex index.php index.pl index.cgi
                  default.php default.pl
</IfMdodule>

也可以解封自动索引当用户访问目录,找不到索引文件的时候,列出目录下的相关文件

可以直接在htdocs下,新建php或者htm文件+修改上述索引文件优先级

创建另一个根目录

1-website

2-wwwroot:虚拟主机的根目录

​ 3-default:文件夹

2-wwwcert:是 SSL 证书

2-wwwlogs:日志文件

修改如下conf:

DocumentRoot "C:/website/wwwroot/default"
<Directory "C:/website/wwwroot/default">

mylove.htm 复制到 C:\website\wwwroot\default\ 下,重启服务器

浏览 http://localhost 应该可以看到了索引列表

添加:mylove.htm最高权限:修改文件将mylove.conf增加在文件之中

则可以直接访问到该文件,不会出现索引列表

如果都没有在默认的索引文件中,那么,直接给出 403 Forbidden

在配置文件中:

Options Indexes FollowSymLinks Include ExecCGI

删除 Indexes之后,则不会出现索引

实验

  1. /website/data/web/webroot 作为根目录
  2. 修改 DocumentRootC:\website\data\web\webroot
  3. website/data/web/mytest 中新建文件 test.htm

从上面来看,webroot是默认访问目录,然而文件却放在mytest目录中;

需要实现目的是:

访问 http://localhost/yourtest/test.htm------>实现对于/website/data/web/mytest/test.htm的访问

实现的方法:

修改:

<IfModule alias_module>
      Alias /yourtest C:\website\data\web\mytest

重启 httpd,刷新,输入 http://localhost/yourtest/test.htm

同时需要修改权限:

设置一个小天窗,单独设置mytest的权限:

<Directory "C:\website\data\web\mytest">
    Options FollowSymLinks Includes ExecCGI 
    AllowOverride All 
    Require all granted
</Directory>

重新开启一个服务器

修改 DocumentRoot "C:/website/data/web/webroot1/" <Directory "C:/website/data/web/webroot1/">

然后进入 bin 目录,用 httpd -f 命令启动 81 端口的配置文件:

c:\website\xampp\apache\bin>httpd -f .\conf\myconf81.conf

命令行:

httpd -f .\conf\myconf81.conf

如果出现443端口被占用的情况,通常情况下是直接kill掉这个进程

也可以在配置文件中kill掉ssl(通常情况下是被其占用)

Include conf/extra/httpd-ssl.conf(直接注释掉这一行)

实验要求:设置服务器文档子目录(/mytest/):不允许ip1访问,允许ip2访问

直接设置权限即可:

<Directory "C:\website\data\web\webroot\mytest">
    <RequireAll>
        Require all granted
        Require not ip ::1
    </RequireAll>
</Directory>

注意IP地址问题

在本机自我访问中实际的访问地址是IPV6方式:::1

在实现远程访问的过程中,直接log日志,就可以较为简单的找到实际访问的IP地址

上述,参考了一下其他的人blog,写的很好;只是blog‘s文字那么傲娇,可能Shanghai的孩子有的会这样

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容