虚拟主机配置(虚拟主机配置是什么)
本文目录一览:
如何在Debian 10上安装Apache并设置虚拟主机
Apache HTTP Server 是目前应用最多的 web server 服务软件之一,Apache提供了许多强大的功能,而且可以通过其他模块进行扩展。Apache HTTP Server是一个开源的跨平台的服务器软件,目前大部分网站都采用Apache作为网站HTTP服务器。
在本教程中,我们将向你介绍如何在Debian 10中安装Apache并配置虚拟主机。
首先你得有一台安装了Debian的服务器,这样便于你在上面进行演练操作。如果你没有可以考虑自己在虚拟机中安装一个Debian 10。当然,我也推荐您购买一台 阿里云VPS 或者 腾讯云VPS 虚拟主机,如果你更喜欢国外服务器,推荐你尝试 Vultr上的VPS ,注册即送$50美元体验,性价比非常高。
当然有主机了,为安全考虑不建议使用root账号,建议创建一个具有 sudo权限的用户 。
同时,你的Debian已经安装了PHP,如果没有安装可以参考「 如何在Debian 10安装PHP 」教程。
Apache的安装包在Debian的默认源中提供了,所以只需要执行安装命令即可安装。执行安装Apache命令之前我们需要先更新一下系统,命令如下:
安装完成后,apache将默认自动运行,我们通过以下命令查看apache服务状态。
输出命令类似如下:
开启防火墙可以加强服务器的安全性,我们通过防火墙只开放需要访问的端口。可以通过防火墙管理软件 ufw 或者 nftables 进行管理。
如果系统没有安装 ufw 或者 nftables ,可以通过如下命令直接安装。
UFW 如果需要开启 (HTTP)80 或者 (HTTPS)443 端口,可以通过执行如下命令开启:
nftables 如果需要开启 (HTTP)80 或者 (HTTPS)443 端口,可以通过执行如下命令开启:
这个更建议使用 UFW 作为防火墙管理软件,相对来说操作更简单。
Apache安装完成后,需要校验一下Apache是否正常工作。校验方法是打开浏览器,在地址栏中输入 ,如果能正常显示类似如下界面,说明Apache安装成功运行正常。
Apache安装完成后,默认的安装配置文件路径如下:
我们在 /var/www 目录中创建一个网站目录,例如 example.com 。默认情况,目录结构如下:
可以通过以下命令创建:
在该目录下我们创建一个 index.php 文件,文件内容如下:
首先,进入 /etc/apache2/sites-available 目录,创建配置文件 example.com.conf 文件,并在其中添加如下内容。
您可以根据需要命名虚拟主机配置文件,但是建议使用域名作为配置文件的名称。
要启用新的虚拟主机文件,请创建一个从虚拟主机文件到启用站点的目录的符号链接,该链接在启动过程中由Apache读取。
在Debian系统中,您可以使用名为 a2ensite 的帮助程序脚本来启用虚拟主机,命令如下:
当然你也可以选择手动创建符号链接,如下所示:
启用配置后,通过键入以下命令测试语法是否正确:
如果一切正常,会输出如下内容:
重启服务,使配置生效,命令如下:
在浏览器地址栏中输入 ,正常情况下你将看到如下输出:
至此,本教程交接完毕。
通过本教程,你将学会如何在Debian 10上安装Apache并设置虚拟主机,如果你有自己的的Debian 10主机不妨按照教程进行安装尝试,如果没有自己的Debian自己建议可以安装一台Debian10虚拟主机或者去 阿里云 或者 腾讯云 或者 Vultr 购买一台自己的VPS服务器。
每个虚拟主机必须设置的指令块是
如何在Apache中实现适用于所有虚拟主机的全局?
在父作用域中指定RewriteOptionsInheritDown。
(例如httpd.conf)以在子虚拟主机中应用规则而不修改它们。这仅适用于RewriteEngine指令设置为on的虚拟主机:请注意,虚拟主机不会继承重写配置。这意味着您需要为要在其中使用重写规则的每个虚拟主机指定RewriteEngineon指令。(资源)Apache自2.4.8起支持此功能(原始问题时不可用)。
来自RewriteOptions的文档:如果启用此选项,则所有子配置都将继承当前配置的配置。它等同于在所有子配置中指定有关如何处理父子关系的更多详细信息,请参阅继承选项。可在ApacheHTTPServer2.4.8及更高版本中使用。InheritDownBefore,InheritDown类似,但是当前范围的规则在任何子范围中指定的规则之前应用。可在ApacheHTTPServer2.4.8及更高版本中使用。IgnoreInherit此选项强制当前配置和子配置忽略将从父指定InheritDown或InheritDownBefore继承的所有。
默认情况下,虚拟主机不会继承mod_rewrite配置设置。要使主服务器设置应用于虚拟主机,必须在每个部分中放置以下指令:RewriteEngineOnRewriteOptionsInherit。
怎么配置虚拟主机
要想完整的配置一个虚拟主机可以按照以下步骤:
通过开始-设置-控制面板,在控制面板上面就可以完成设置。例如你要是想把域名和虚拟主机进行绑定的话,你只要点击控制面板上的域名绑定,再在输入你要绑定的域名就可以啦。
大家都知道网站的静态化是可以使搜索引擎更好的收录,对于网站也是非常有利的,那么要怎样才可以实现伪静态呢?
虚拟主机伪静状态也是可以通过虚拟主机上面的控制面板来设置的,首先我们要了解访问链接如果结尾是.php的格式的话,那就说明这个网站还没有设置伪静态。然后我们再在控制面板上面找到伪静态设置,打开伪静态设置弹出对话窗,选择对话窗上面的Discuz点击确认就可以啦。这个时候不要以为伪静态已经设置好。你还需要到Discuz后台去设置一下,通过浏览器来访问一个网站,输入账号和密码登入网站的后台。进入后台页面后点击全局-SEO设置按钮后,上面就会显示静态化设置页面,然后再把可用里面的小方框全部勾选上,点击提交按钮就完成了。你可以再去访问网站的时候,只要页面链接的结尾是html,这会说明伪静态已设置好了。
Windows虚拟主机的权限如何设置
windows 2000虚拟主机基本权限的设置
在这里说一下我以为比较安全的win2000虚拟主机的权限设置方法,仅仅是说下权限设置。
一.虚拟主机需要的软件及环境
1.Serv-U5.0.11(似乎不安全,但是也未必)
2.Mysql数据库
3.Mssql数据库
4.PcAnyWhere远程控制
5.杀毒软件,我一般使用诺顿8.0
6.php5
7.ActivePerl5.8
以上各种软件,除Mssql数据库以为,其他的都应去官方网站下载推荐版本安装。下面开始就是安装设置了,从系统安装完开始。假设系统安装的windows2000高级服务器版,系统分为c盘,d盘和e盘,全部是ntfs格式。
二.系统端口设置
虚拟主机,一般同时使用PcanyWhere和终端服务进行控制,终端服务要更改端口,比如修改成8735端口。根据要开放的服务,去设置TCP/IP筛选。为什么不使用本地安全策略了?个人认为TCP/IP筛选比较严格,因为这里是除非明确允许否则拒绝,而本地安全策略是除非明确拒绝否则允许。如果我理解不当,还请指教。TCP/IP筛选设置如下:
TCP端口只允许21,80,5631,8735,10001,10002,10003,10004,10005;IP协议只允许6;UDP端口我没有做过详细测试,不敢乱说,以后测试了再补上。TCP/IP端口里面的10001-10005是设置Serv-U的PASV模式使用的端口,当然也可以使用别的。
本地连接属性里面,卸载所有的其他协议,只留下Internet协议(TCP/IP),顺便把administrator帐号改个复杂点的名字,并且在本地安全策略里面设置不显示上次登陆帐号,对帐号锁定做出合适的设置。然后重新启动计算机,这步设置已经完成。
现在开始安装软件,所有的软件都安装在d盘,e盘作数据备份使用。先安装Serv-U到d:Serv-U,并且汉化顺便破解,嘿嘿。然后依次安装到d盘。现在开始设置权限。首先二话不说,c盘,d盘和e盘的安全里面把Everyone删除,添加改名后的administrator和system,让他们完全控制。
高级里面重置所有子对象的权限并允许传播可继承权限。这样系统所有的.文件,目录全部是由改名后的administrator和system控制了,并且自动继承上级目录的权限,下面开始为每个目录设置对应的权限。
运行asp,建立数据库连接需要使用C:Program FilesCommon Files目录下面的文件。在这里,设置C:Program FilesCommon Files权限,加入everyone,权限为读取,列出文件夹目录,读取及运行。还可以使用高级标签进行更加严格的设置,但是我没有做过,不敢胡说。
运行php,需要设置c:winntphp.ini的权限,让everyone有读取权限即可。如果php的session目录设置为c:winnttemp目录,此目录应该让everyone有读取写入权限。为提高性能,php设置为使用isapi解析,d:php目录让everyone有读取,列出文件夹目录,读取及运行权限。至于php.ini的设置,这里我就不说了。第一我不很懂,第二我只讲系统权限设置。
运行cgi,设置d:perl让everyone有读取,列出文件夹目录,读取及运行权限。顺便说下,cgi设置为使用isapi方式解析有利于安全和性能。
现在说下让人头大的Serv-U的设置了。这东西功能确实强大,但是安全性不怎么好,需要我们来改造。最首先的是溢出攻击,5.0.11好象已经没有这个缺陷了。其次是修改ini配置文件,这里已经没有权限修改了,略过不提。据我所知现在唯一的办法就是使用默认的管理帐号和密码添加有写入执行权限的帐号来执行木马了。
把默认帐号密码修改掉就完了,这个东西直接使用editplus之类的编辑器打开ServUDaemon.exe和ServUAdmin.exe修改就可以了。如果懒得麻烦,随便什么语言写个程序都很容易作到。我以前写过一个这样的东西,方便自己设置。现在Serv-U基本上没有什么问题了。
至于数据库,权限已经不用设置了,直接继承d盘根目录就可以。至于里面的帐号密码该怎么设置,我也懒得说了。
现在最后一点,就是设置c:winntsystem32目录和他下面的一些东西了。很多程序运行需要这里的动态连接库,而且这里文件太多,我也没有弄明白所有的,把目录c:winntsystem32给everyone赋予读取,列出文件夹目录,读取及运行即可。
其实,这样做是不安全的,但是别慌,我们还没有完。在这个目录下面,我们还需要对几个特别程序进行单独的设置。首先就是cacls.exe,嘿嘿,先把这个设置了在说别的。这东东是设置权限用的,让它不继承父目录权限,并且让它拒绝任何人访问,因为我们一般不使用这个鸟东西。其他的要设置的程序列表如下:net.exe,cmd.exe,,这几个程序设置成只允许改名后的administrator访问。
现在就想起这么多,这是今天上班空闲时间零零碎碎写的,以后再补充吧。
补充:禁止 非管理员组访问winnt目录 再把需要调用的文件 从winnt弄出来 重新 赋予它读取路径。
发表评论
暂时没有评论,来抢沙发吧~