我只想使用JSP将HTML文件服务器端包含到另一个HTML文件中.PHP不可用.这是我想要的吗?
<jsp:include page="/include.html"></jsp:include>
Run Code Online (Sandbox Code Playgroud) 我看到了类似的问题,但我的情况略有不同:
我在IIS 7.5服务器(R2008 V2)上使用#include文件得到间歇性结果.我的包含仅在与当前.asp页面位于同一文件夹中或当前页面的子文件夹中时才起作用.这很不方便,因为我想将它们全部保存在主页面之外的/ lib子文件夹中.
我的配置:我有一个名为DCN的文件夹,位于wwwroot文件夹的正下方.DCN文件夹中的/ lib文件夹中有多个文件,因此绝对路径为c:\ inetpub\wwwroot\dcn\lib\my_include_file.asp.如果我在DCN文件夹中打开一个ASP页面,我可以从/ lib子文件夹中提取包含文件.但是,如果我从DCN/trouble文件夹打开一个ASP页面(例如"DCN\Trouble\Search.asp"),并且search.asp页面有一行说明:
<!--#include file="../lib/my_include_file.asp"-->
Run Code Online (Sandbox Code Playgroud)
包含失败,我得到500错误.
我也尝试过:
<!--#include file="/lib/my_include_file.asp"-->
Run Code Online (Sandbox Code Playgroud)
结果相同.与:相同:
<!--#include file="/DCN/lib/my_include_file.asp"-->
Run Code Online (Sandbox Code Playgroud)
我将斜杠更改为反斜杠,结果相同.我甚至尝试过:
<!--#include file="c:\inetpub\wwwroot\dcn\lib\my_include_file.asp"-->
Run Code Online (Sandbox Code Playgroud)
(出于纯粹的解散),但我仍然得到相同的结果.
如果我在dcn\trouble文件夹中创建一个子文件夹,我可以包含它的文件,但很明显,这并不理想.
任何建议将不胜感激.我不禁想到这是微不足道的.提前致谢!
我在我的Mac上运行多个PHP应用程序,运行OS X 10.5.6,Apache 2,PHP 5.我为每个项目设置了子域,每个子域都有一个主机文件条目,Apache配置中有虚拟目录块.所以
project1.localhost转到/ Library/WebServer/Documents/Project1
project2.localhost转到/ Library/WebServer/Documents/Project2
等...
但是,这种方法并没有真正"隔离"Web应用程序.例如,如果我包含这样的脚本:
<?php
include("/includes/include.php");
?>
Run Code Online (Sandbox Code Playgroud)
它引用了我计算机基本目录中的脚本.所以它访问
C:/includes/include.php
有没有办法让我参考
C:/Library/WebServer/Documents/Project2/includes/include.php
基本上,使它不知道它自己的目录之外的任何东西.另外,有没有办法在每个子域的基础上使用php.ini?
我有一个ASP.NET母版页引用#include文件,如下所示:
<!--#include virtual="/includes/scripts.inc"-->
Run Code Online (Sandbox Code Playgroud)
我修改了文件/includes/scripts.inc,但更改没有显示在页面中.需要做什么才能反映这些修改?
我需要避免以下情况:
还有其他选择吗?是否有一个设置会影响IIS缓存#include文件的时间?
我有一个简单的.shtml文件,我已经在其中声明了一个变量.
<!--#set var="testVar" value="12345" -->
Run Code Online (Sandbox Code Playgroud)
但是当我想使用打印值时
<!--#echo var="testVar" -->
Run Code Online (Sandbox Code Playgroud)
它说
无法找到变量'testVar'
有什么问题?我正在使用IIS 7.5,我也在Apache2上测试过,但它也没有用!
在IIS 7.5中,是否可以单独使用web.config为具有.html扩展名的文件启用SSI处理?具体来说,我不想使用默认的SSI扩展名.shtml.
原因:我不想更改扩展名.这样做会导致搜索引擎结果中的链接断开.
另外,我在web.config中执行此操作的动机是因为这是一个共享服务器.
现在我有一个脚本在4个文件中达到400 KB(每个文件大约3500行).
我应该将它拆分成更多文件吗?
由于多次require_once调用,是否有更多文件会影响性能?
我目前正在调查RegisterClientScriptInclude方法,所以我可以确定我不会在一个页面上执行两次包含JQuery的操作.Microsoft文档说明:
RegisterClientScriptInclude方法的这种重载采用key和url参数来标识脚本,以及一个类型参数来指定客户端脚本include的标识.您可以根据将要访问资源的对象指定类型.例如,使用Page实例访问资源时,可以指定Page类型.
我不知道它实际上对我有什么影响.它是否只是以某种方式识别哪个页面/控件优先并注册了包含?有人可以解释为什么我想要提供除键/ url之外的类型?提前致谢.
在我作出反应的应用程序我执行服务器端渲染,所以我不希望添加node_modules的,因为我的表现服务器端issue.But我想css从node_modules它们用作UI套件libs.so我在使用的WebPack nodeExternal的WebPack。 server.config文件如
const path = require('path');
const merge = require('webpack-merge');
const baseConfig = require('./webpack.base.js');
const nodeExternals = require('webpack-node-externals')
let test = {
test: /\.css$/,
loader: 'css/locals?module&localIdentName=[name]__[local]___[hash:base64:5]'
}
const config = {
target:'node',
entry: './src/index.js',
output:{
filename:'bundle.js',
path:path.resolve(__dirname,'build')
},
externals: [nodeExternals({
whitelist: [/\.(?!(?:jsx?|json)$).{1,5}$/i]
})]
}
module.exports = merge(baseConfig,config)
Run Code Online (Sandbox Code Playgroud)
这里webpack添加 css 文件,但它没有从我的 node_modules UI 工具包文件中加载@font-face。如果我从webpack.server.config文件中删除nodeExternal,那么一切正常,但文件大小会增加。
我已经在我的webpack.base.config文件中添加了字体规则bundle.js
const path = …Run Code Online (Sandbox Code Playgroud) 我试图保持我的代码干净将其中的一些分解成文件(有点像库).但其中一些文件需要运行PHP.
所以我想做的是:
$include = include("file/path/include.php");
$array[] = array(key => $include);
include("template.php");
Run Code Online (Sandbox Code Playgroud)
比在template.php我会:
foreach($array as $a){
echo $a['key'];
}
Run Code Online (Sandbox Code Playgroud)
所以我想存储php在变量运行之后发生的事情以便稍后传递.
使用file_get_contents不会运行它将它存储为字符串的php,所以有没有任何选项,或者我运气不好?
更新:
所以喜欢:
function CreateOutput($filename) {
if(is_file($filename)){
file_get_contents($filename);
}
return $output;
}
Run Code Online (Sandbox Code Playgroud)
或者你的意思是为每个文件创建一个函数?