PHP开发虚拟主机管理系统的思路

拿Nginx来说,在主配置nginx.conf里包含虚拟主机配置:

include sites-enabled/*.conf;

新建虚拟主机时就在sites-enables里新建一个文件,比如:

sites-enabled/a.com.conf

server {

listen          80;

server_name     www.a.com;

location / {

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $remote_addr;

proxy_set_header Host $host;

proxy_pass http://127.0.0.1:8080;

}

}

也就是访问 www.a.com 都会反向代理给后端Apache监听的8080处理.

利用Nginx的转发可以实现在一台服务器上跑多个版本的Apache(PHP),只要Apache监听不同的端口即可.

比如Apache(PHP5.4)监听的端口是8081,那需要PHP5.4支持的用户网站在生成Nginx虚拟主机配置时就转发到8081端口.

Apache主配置文件httpd.conf中载入虚拟主机配置:

Include conf/extra/httpd-vhosts.conf

httpd-vhosts.conf里有载入vhosts下的cofn文件:

Include conf/extra/vhosts/*.conf

里面的conf/extra/vhosts/a.com.conf虚拟主机:

<VirtualHost *:8080>

ServerAdmin [email protected]

DocumentRoot "/png/www/a.com/public_html"

ServerName www.a.com

ServerAlias a.com

ErrorLog "/png/www/a.com/logs/httpd_error_log"

CustomLog "/png/www/a.com/logs/httpd_access_log" combined

<Directory "/png/www/a.com/public_html">

Options Indexes FollowSymLinks

AllowOverride All

Require all granted

</Directory>

</VirtualHost>

/png/www/a.com是虚拟主机的目录,里面的public_html是根目录,为虚拟主机用户分配一个该目录的FTP用户即可,比如使用ProFTPD的ftpasswd生成一个账户:

http://my.oschina.net/eechen/blog/303398

开发一个虚拟主机管理系统,无非就是调用adduser/ftpasswd生成FTP账户,以及生成Nginx和Apache的虚拟主机配置,生成后用nginx -t和httpd -S测试配置是否正确后重载服务生效.而PHP提供了众多
文件系统操作函数
字符串处理函数(替换/
正则匹配),PHP对数据库有着良好的支持,
存储虚拟主机的用户信息自然也很方便.

时间: 2024-11-09 03:38:57

PHP开发虚拟主机管理系统的思路的相关文章

perl实现N点虚拟主机管理系统加密算法

#!/usr/bin/perl -w sub npoint{ my $CodeStr = $_[0]; print $CodeStr.$/; my $CodeLen = 32; my $CodeSpace = $CodeLen - length($CodeStr); if ($CodeSpace >= 1){ $CodeStr .= chr(21) x $CodeSpace; } my $NewCode = 1; my @code = split(//,$CodeStr); my $count

虚拟主机VPS区别:DigitalOcean优惠码

虚拟主机与VPS区别在哪?这里从几个角度解释下: 虚拟化技术 把一台独立服务器用虚拟化技术"切割"开,分配不同的硬件配置,然后分配给不同的普通用户使用,就是虚拟主机的基本思路.部分奸商为了节省成本,甚至把VPS做成虚拟主机卖,容易跑路,价格异常低,建议不要买. VPS是指virtual private server,级别是在server水平上,拥有root权限.常见的虚拟化架构有OpenVZ.Xen和KVM.OpenVZ性能强大,但可以超售:Xen和KVM都是比较先进流行的技术.KVM

新型功能强大的VPS虚拟主机控制面板:BrainyCP安装教程

简介 BrainyCP是一款由乌克兰人开拓的虚拟主机管理系统,免费且超强可匹配cPanel,也有专人保护进行不按期继续的更新,为虚拟主机托管面板供给了一个挑选. 更新 因为此款面板较新,言语目前仅支持俄语等,伏笔VPS瞧见仍是有人需要这个面板,为了让人使用便捷,汉化小哥哥林叶展弟弟将其汉化.言语文件绝对路径:/etc/brainy/langs/ 长处 支持 Skype:skype:live:support_39390?chat文档:http://docs.brainycp.com/官方博客:ht

使用delphi+intraweb进行微信开发2—intraweb以.net方式发布(以asp.net mvc4模式部署)在IIS(.net虚拟主机)上

在第一讲使用delphi+intraweb进行微信开发1--微信平台接入中我们编写了一个简单的微信接口程序,这个程序我是用Stand Alone Server / Service 方式编译的程序,并且将端口设置成80进行的微信接口测试,但是实际使用时为了更好的服务器性能我们一般采用iis作为web服务器,以往的情况下iw需要编译成isapi部署在iis上.但是由于自打iis7以后iis对isapi的态度发生了很大变化(推荐使用fastcgi了)导致编译好的isapi很难在iis7.5上部署成功,

wamp开发环境配置之配置Apache虚拟主机

网站建设人员在本地测试时,常常不是一个网站,那怎么能像输入域名一样在地址栏上面输入“域名”就能本地访问该网站呢?这里就要配置Apache虚拟主机了! 1.找到apache\conf\httpd.conf文件,在文件中找到代码 #Include conf/extra/httpd-vhosts.conf 将前面的 # 删去! 2.找到apache\conf\extra\httpd-vhosts.conf文件,咱们就要在这个文件中配置虚拟机!打开该文件,你可以将代码前面有#的全部删除,他们只是起到注释

PHP全栈开发:在本机上创建虚拟主机与域名

如何在windows+wamp环境上进行自己创建的网站的域名访问 step 1 在wamp的安装目录,如C:\wamp64\www\下创建自己的网站目录pe step 2 右键wamp图标,在wamp settings中开启VirtualHost sub-menu. 开启之后VirtualHost sub-menu这个选项的前方会打一个小绿√ step 3 打开本机的localhost页面,然后在localhost页面下方有 Add a Virtual Host 这个选项,意思就是添加一个虚拟主

Nginx配置多个基于域名的虚拟主机+实验环境搭建+测试

标签:Linux 域名 Nginx 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xpleaf.blog.51cto.com/9315560/1901284 0.说明 使用Nginx可以配置基于域名的虚拟主机.基于端口的虚拟主机和基于端口的虚拟主机,比较常用的是基于域名的虚拟主机,这里要做的配置是基于域名的虚拟主机,并且是配置多个基于域名的虚拟主机. 关于Nginx配置文件的说明可以参考官方文档,同时也可以参考老男孩老师的书

网站是PHP程序写的,我为什么说要选linux系统的php虚拟主机?

本文标签:  php程序 LAMP构架 php网站 apache配置 虚拟主机   服务器 在国内,空间市场可谓之"枝繁叶茂",有关php空间.php虚拟主机在百度搜索一下有多达到上百万条记录,每条记录无不都在告诉你,选我吧,选我把,我是最好的?我是最稳定的?那么,我们如何在这良莠不分的海量信息中购买php空间类?一个选购php空间的原则:认准linux系统永远都是php语言最好的伙伴,php程序只有在linux系统上才能全力发挥它的"火力",要买就买linux空间

虚拟主机搭建微信公众号服务器

一.前言 搭建微信公众号服务器的方式不只一种,可以用java等其他语言或是其他云空间来搭建服务器,这里总结的是用虚拟主机(主机公园中的虚拟主机)搭建微信公众号服务器的大概思路.不管用什么方式,配置微信公众号服务器的原理不会变. 二.步骤 开始开发微信公众号看这里 首先搭建服务器,因为微信公众号开发的第一步要先配置服务器 1. 万网上先去买个域名,然后再去主机公园那里买个服务器(虚拟机)(我今天用的香港虚拟机试用版还未买),然后再解析域名.详细步骤这里看教程 如果不需要建个人博客,后面的上传wor