我试图建立一个从Silverlight应用程序到PHP页面的HTTP持久连接(即无需创建每个HTTP请求新的TCP连接)由Apache服务器托管.
为此,我需要Web服务器发送其HTTP响应,并将"Connection"标头设置为"Keep-alive".客户端,似乎没有要任何问题,因为由Silverlight中提供的网络API基本上是浏览器的网络capabilies的包装,从我读过:所以如果浏览器支持HTTP 1.1和连接:保持活动默认情况下,它的请求,没关系.Content-Length也已明确定义,因此服务器知道何时必须发送响应.但是,服务器对PHP请求的响应系统地将"连接:"设置为"关闭",从而结束连接并阻止持久连接.
我已经尝试了一些解决这个问题的方法:不同的方法(GET和POST),在我的脚本开头用以下PHP代码显式给出响应的"Connection:keep-alive":
header("Connection: Keep-alive");
Run Code Online (Sandbox Code Playgroud)
后者将预期的标头添加到响应中,这很好,但是附加的"连接:关闭"仍然会在响应标头中添加.
它是PHP或Apache的一个特性强制执行"关闭"(出于某些安全性或性能目的,我猜)或者我只是在这里遗漏了一些东西?
提前致谢.
PS:通过嗅探数据包,我注意到没有多少网站使用"保持活动"并重新建立TCP连接.Keepalive不是HTTP 1.1下的默认和首选行为吗?
我想读取和写入受密码保护的Excel文件.如何使用Apache POI API执行此操作.
虽然我是一个体面的Web开发人员,但我和我的大多数同事在使用mod_rewrite时总是很难完成基本任务.
我阅读了手册并了解了大部分内容,但是我在生活中学到的大部分技能都是通过做.麻烦的是,没有简单的方法来调试配置.大多数情况下,如果我成功配置.htaccess
文件,那绝对是随机运气,而不是通过反复试验.
我意识到可以读取Apache错误日志或将rewriteRule结果传递给GET参数并将它们呈现在PHP文件中,但这样做不方便且速度慢.
所以,问题.是否有编写和调试.htaccess
指令的工具? 更新:鉴于要求库和类似的问题经常被关闭为超出SO的范围,是否有更通用的技术来做到这一点?
(1)我正在将我的网站上传到远程Web服务器.
(2)网站的模板系统的设置方式是通过发送url编码的get请求来形成所有页面 index.php
(3)加载初始页面工作.此页面通过评估其表单的值来确定下一页的位置.
(4)重定向到下一页是通过执行以下操作来执行的: header('location: next_page')
(5)由于某种原因,不执行重定向.这是代码的样子:
$error = "";
if(isset($_POST['index_choice'])){
$path_choice = isset($_POST['path']) ? $_POST['path'] : NULL;
//echo $path_choice;
//echo $page_inc;
//nothing after this
if($path_choice != null){
if($form->is_connected()){
//if($path_choice != "" || $path_choice != NULL){
if($path_choice == "new"){
//header('location: /login.php');
//header('location: page/login');
header('location: /index.php?page=login');
exit();
}
else{
//header('location: /amend.php');
//header('location: page/amend');
header('location: /index.php?page=amend');
exit();
}
//}
/**
else{
//destroy_session();
$error = "You haven't selected a path. Please choose a path";
}
*
*/
}
else{
//destroy_session();
$error = …
Run Code Online (Sandbox Code Playgroud) 我越来越:
java.io.IOException:标头签名无效; 读取0x000201060000FFFE,预期为0xE11AB1A1E011CFD0
尝试使用apache POI HPSF向Excel文档添加一些自定义属性时.
我完全确定该文件是Excel OLE2(不是HTML,XML或Excel不会抱怨的其他内容).
这是我的代码的相关部分:
try {
final POIFSFileSystem poifs = new POIFSFileSystem(event.getStream());
final DirectoryEntry dir = poifs.getRoot();
final DocumentEntry dsiEntry = (DocumentEntry)
dir.getEntry(DocumentSummaryInformation.DEFAULT_STREAM_NAME);
final DocumentInputStream dis = new DocumentInputStream(dsiEntry);
final PropertySet props = new PropertySet(dis);
dis.close();
dsi = new DocumentSummaryInformation(props);
}
catch (Exception ex) {
throw new RuntimeException
("Cannot create POI SummaryInformation for event: " + event +
", path:" + event.getPath() +
", name:" + event.getPath() +
", cause:" + ex);
}
Run Code Online (Sandbox Code Playgroud)
尝试使用word和power point文件(也是OLE2)时出现同样的错误. …
在我的一个CakePHP网站中,我收到了这个错误.
请求的实体太大
我不知道是什么问题.我认为我通过表单发布的数据太大了.我在搜索引擎中搜索了这个,并得到了我将不得不增加post_max_size
.默认情况下,我认为它设置为8M.
但是不知道如何增加post_max_size
CakePHP以及该怎么做呢?
谢谢.
我想在我的windows + apache安装上通过谷歌下载mod_pagespeed模块.
任何人都可以告诉我从哪里下载和安装在带有Windows的apache上?
我为我正在处理的网站创建了一个小规模的CMS,并且有一个表单可以上传要在网站上使用的图像文件.它成功上传文件,但它设置的权限不允许在浏览器中查看文件.
这是我目前上传文件的PHP代码
$typepath = $_POST['filetype'];
$target_path = "../../images/uploads/".$typepath."/";
$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);
if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
echo "<p>The file ". basename( $_FILES['uploadedfile']['name']).
" has been uploaded</p>\n<p>To the directory: <span style=\"font-weight:bold;\">".substr($target_path, 6)."</span></p>";
} else{
echo "There was an error uploading the file, please try again!";
}
Run Code Online (Sandbox Code Playgroud) Apache Httpd手册有一节关于自定义访问日志格式.其中一个选项是%D
字段,记录为
服务请求所需的时间,以微秒为单位.
任何人都可以告诉我这究竟是什么测量?例如,它是第一个字节的时间,还是时间到最后一个字节,还是比这更复杂的东西?
我需要这证明符合性能要求,我想知道这里测量的确切内容.
apache ×10
php ×5
apache-poi ×2
java ×2
.htaccess ×1
access-log ×1
cakephp ×1
excel ×1
header ×1
http ×1
http-headers ×1
keep-alive ×1
logging ×1
mod-rewrite ×1
post ×1