高级应用与部署 —— 主程序与web目录分离
在网站部署中,考虑网站的安全行问题,可以将您的网站主程序与web目录分离,使主程序在web目录之外,从而提高网站的安全性。
分离方法
1.将phpcms v9中程序主框架目录phpcms移动至web目录之外
如图:

2.修改web目录下程序入口文件index.php文件为
/*** index.php phpcms 入口** @copyright (c) 2005-2010 phpcms* @license http://www.phpcms.cn/license/* @lastmodify 2010-6-1*///phpcms根目录define('phpcms_path', dirname(__file__).directory_separator);include '../phpcms/base.php';pc_base::creat_app();/*** index.php api 入口** @copyright (c) 2005-2010 phpcms* @license http://www.phpcms.cn/license/* @lastmodify 2010-7-26*/define('phpcms_path', dirname(__file__).directory_separator);include '../phpcms/base.php';$param = pc_base::load_sys_class('param');$op = isset($_get['op']) && trim($_get['op']) ? trim($_get['op']) : exit('operation can not be empty');if (!preg_match('/([^a-z_]+)/i',$op) && file_exists(phpcms_path.'api/'.$op.'.php')) {include phpcms_path.'api/'.$op.'.php';} else {exit('api handler does not exist');}这样即可以完成主程序与web目录分离
高级应用与部署 —— 主程序与web目录分离的更多相关文章
- svn钩子(hooks)自动部署代码到web目录
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/li956732806/article/details/71158869 web目录:/hoe ...
- Yii2高级模板vendor和application非同级目录部署
上面是Yii2的高级模板,当我们有多个application的时候,这种高级模板可以可以提供很好的扩展性,多个application共用一份YII2框架,默认情况下,框架和application是在同 ...
- windows svn 上传后 自动部署 到web目录下
第一步 把web目录设置为工作目录 "D:\Program Files (x86)\VisualSVN Server\bin\svn.exe" upgrade "D:\y ...
- ASP.NET MVC3 系列教程 - 部署你的WEB应用到IIS 6.0
I:ASP.NET MVC3 部署的前期工作 1.确认部署的服务器操作系统环境 首先我们确认服务器的操作系统版本 可以从系统命令行工具里输入: systeminfo 获取相关操作系统信息例如 然后再确 ...
- Eclipse将项目部署tomcat的webapps目录
Eclipse将项目部署tomcat的webapps目录 >>>>>>>>>>>>>>>>>& ...
- Django部署到Apache Web Server
Windows环境下,将Django部署到Apache Web Server 在Windows上部署Django(用mod_wsgi)会出现各种奇怪的问题,现简单记录下配置过程及遇到的错误及解决方法. ...
- 如何使用Docker部署一个Go Web应用程序
熟悉Docker如何提升你在构建.测试并部署Go Web应用程序的方式,并且理解如何使用Semaphore来持续部署. 简介 大多数情况下Go应用程序被编译成单个二进制文件,web应用程序则会包括模版 ...
- Nginx 部署多个 web 项目(虚拟主机)
1,创建 www 目录 2,在 www 目录下创建 test1 和 test2 目录,表示两个项目 3,test1 下创建 test1.html 4,test2 下创建 test2.html 5,配置 ...
- 在IIS上部署基于django WEB框架的python网站应用
django是一款基于python语言的WEB开源框架,本文给出了如何将基于django写的python网站部署到window的IIS上. 笔者的运行环境: Window xp sp3 IIS 5.1 ...
随机推荐
- Android调用Asp.net Web Service示例
WebService代码: using System; using System.Collections.Generic; using System.Linq; using System.Web; u ...
- axd与ashx区别
简单说明一下axd文件.axd文件实际上并不是在硬盘上存在的文件,而是HttpHandler的一种映射.在ASP.NET MVC中有很多内置的axd到ashx的映射.你可以在web.config中通过 ...
- (转载)php的类中可以不定义成员变量,直接在构造方法中使用并赋值吗?
(转载)http://s.yanghao.org/program/viewdetail.php?i=184313 php的类中可以不定义成员变量,直接在构造方法中使用并赋值吗? class block ...
- java容器类总结
1.java容器分类图 说明:左图为简化图(其中粗线部分是重点的容器),右图为完整容器分类图 2.容器类接口和抽象容器类 2.1 说明 容器接口是容器 ...
- UVAlive3211 Now or later(2-SAT)
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=33799 [思路] 2-SAT. 二分安全间隔x,先到为1后到为0, ...
- jquery 异步请求Demo【转载】
$(document).ready(function() { $.ajax({ url : "/AjaxAction/LoginArea.ashx", data : {userna ...
- RAM区间最值
RMQ (Range Minimum/Maximum Query)问题是指:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j<=n),返回数列A中下标在i,j里的最小(大)值,也就 ...
- js跨域问题新方案
只要创建一个空图片. js代码: var data = "http://localhost:8080/test?id="+id+"&content="+ ...
- awk使用入门
1.基本用法 awk '{pattern + action}' {filenames} pattern 表示 AWK 在数据中查找的内容 action 是在找到匹配内容时所执行的一系列命令. patt ...
- django 执行原始SQL
二.知识点总结 When the model query APIs don’t go far enough, you can fall back to writing raw SQL. go far ...