Articles of PHP

ASP.NET网站作为PHP Nginx服务器上的子文件夹

我的要求: 我的网站 – > example.com – 运行在Nginx服务器下运行的PHP构build的Magento电子商务平台(目前是Apache,但很快转移到Nginx) 另一个网站 – > example.com/abcd – abcd目前是运行在ASP.NET上的另一个网站 另一个网站 – > example.com/xyz – xyz是目前运行在ASP.NET上的另一个网站 我想在1台服务器上共存PHP和ASP.NET网站,ASP.NET网站作为子文件夹运行。 背景: 1. Magento网站是一个不能重build的电子商务网站。 2. ASP.NET是一个企业网站,投资金钱到电子商务网站,它不能重新build立,因为他们有许多企业网站,每个将作为子文件夹运行到magento网站。 研究: 简单地看单声道项目。 但是从我的理解你需要有单独的域和单独的文件夹的PHP和ASP.NET存在1台服务器上? 或者我的理解错了? 任何人都可以在这里提供更多关于这是否可以完成的信息。 如果是这样,我需要看什么方向? 正如在要求中提到的,我不能重新构build任何企业网站(尽pipe可以做出微小的改变),因为它们已经完成,并且它们中的许多。 另外我知道我可以把一个子域http://abcd.example.com,并使其指向另一台服务器与IIS,但企业希望作为最后一个选项。 我的背景是作为一个PHP开发人员,所以我对ASP.NET的理解很less。 所以请温柔:)

奇怪的PHP上传行为

我们正在上传10个文件到我们的PHP前端(总共4MB),Chrome总是返回“连接closures”,就像服务器放弃了http请求一样。 当然,我们尝试了所有的浏览器,Windows和Mac,甚至尝试了不同的ISP,所以我们可以排除问题是客户端。 这只发生在生产环境中,但是我们有一个相同的testing环境(但是在不同的虚拟机中),并且问题不会出现在它(事件使用相同的10个文件)中。 # php.ini max_execution_time = 30 max_input_time = 60 memory_limit = 128M max_file_uploads = 20 file_uploads = On post_max_size = 50M upload_max_filesize = 12M 我们甚至尝试更大的文件,有时它的工作。 但在某些情况下,对于某些文件,它不起作用(文件区域基本上是图像和PDF) 看着Apache / PHP的日志,没有证据表明发生了错误,似乎一切都很好。 访问日志显示POST / mypage 200 我们已经在这个奇怪的问题上花了12个小时,但是我们仍然无法弄清楚问题所在。

多个PHP版本作为CGI运行

我试图安装PHP的第二个版本,与当前版本的PHP一起运行。 我已经从github(5.5-DEV)编译了最新的php源代码,并且正在尝试将其作为CGI运行。 这是我的虚拟主机configuration: <VirtualHost *:8055> DocumentRoot /Library/WebServer/Documents/ ScriptAlias /cgi-bin/ /usr/local/php55/cgi Action php55-cgi /cgi-bin/php-cgi AddHandler php55-cgi .php <Directory /Library/WebServer/Documents/> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Order Allow,Deny Allow from all </Directory> DirectoryIndex index.html index.php </VirtualHost> 但是当我去http://127.0.0.1:8055/info.ph p,我得到以下错误: 被禁止 You don't have permission to access /cgi-bin/php-cgi/info.php on this server 编辑 我现在正在切换 LoadModule php5_module /usr/local/php54/libphp5.so 和 LoadModule […]

PHP5.3 FastCGI不使用全局configuration的值

有一个Centos6.3系统。 Apache 2.2.15 + mod_fcgid + PHP 5.3.3 date.timezone值有问题。 这是在全球/etc/php.ini提到的: date.timezone = "Europe/Moscow" 并没有在用户的本地php.ini中提到。 结果,我得到很多的警告,如: Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this […]

在IIS 8上安全文件下载(mod_auth_token或类似)

我试图设置安全的文件下载(例如,可以生成一个临时链接来下载文件,而不是使用不明确的URL,这可能是不安全的)。 类似mod_auth_token会工作,但我们正在使用IIS 8,我似乎无法find一个等效。 我们正在为站点使用基于自定义令牌的APIauthentication系统,文件下载链接将由PHP API按需生成,并通过JSON返回给应用程序。 什么是在IIS中完成这个好方法?

PHP扩展和Apache的MODS了/服务器重新启动后不工作?

我想知道是否有人曾经遇到过,因为我很难说,我的服务器pipe理知识不是特别好,所以我不知道什么可能是错的,更不用说如何解决它。 基本上, 上周四,我们的服务器上一切正常。 我星期五进来,这是一个混乱:PHP扩展缺失/不工作,Apache模块已经消失。 (例如, oci_*完全消失,odbc_不能正常工作,但仍然存在,单点login的apache ntlm_auth消失了,所以网站甚至没有在IE中加载)。 我排除任何故意的,因为这是不可能的。 星期四和星期五之间真正发生的唯一事情就是在星期四晚上,其中一名networking人员在服务器上进行了RAM升级并重新启动。 就是这样,没有别的。 现在我想知道,如果我们几个月前安装的那些扩展和某些方面只是保存在某种本地内存中,并且重新启动了它们, 但是我们把它们全部安装为root,所以我不明白为什么它和其他安装不一样。 这对我来说是没有意义的。 为了扩展一个非常错误的例子, php odbc_扩展: 它仍然在服务器上,它不会返回未定义的函数或任何东西。 但是它不能再连接到数据源。 我已经通过命令行对它进行了testing,并且与数据源和login信息一起工作得很好,但是突然间在php odbc_connect()函数中出现了,它只是无法连接。 ( [S1000][unixODBC][FreeTDS][SQL Server]Unable to connect to data source. 但unixODBC设置正常。 就像我说我已经通过terminal进行了testing,它可以连接,我们没有改变任何东西,现在突然间没有通过PHPfunction。 任何人有什么想法可以做什么? 顺便说一句,这是在CentOS 5.x上。

设置所有的Apache网站与临时静态caching原始页面

我想将服务器上的所有虚拟主机设置为维护一段时间。 临时页面应该包含类似的东西 对不起,页面www.xxx.com因维护而closures。 你可以在这里看到caching版本: 然后,诀窍:只要服务器closures,用户应该从caching中看到像googlecache或类似的caching页面。 这将显示正确的内容在网页上,静态无论如何,给访问者在许多情况下所需的内容,而我可以closures通常需要显示该网页的MySQL和其他服务。 如何在所有虚拟主机上设置全局页面,通过PHPparsing原始请求的URL?

在UBUNTU 10.10 Maverick上,PHP 5.3.3(安全)如何升级到5.3.8+?

有没有办法将PHP 5.3.3升级到更高版本 – 回购远远落后,但这可能是由devise(?) – 所以在销毁任何东西之前要求;-) PHP 5.3.3-1ubuntu9.10与Suhosin-Patch(cli)(构build于:Feb 11 2012 06:21:15)Copyright(c)1997-2009 PHP Group Zend Engine v2.3.0,Copyright(c)1998-2010 Zend Technologies与Xdebug v2.1.0,Copyright(c)2002-2010,Derick Rethans

thttpd速度慢,资源利用率很高

我有一个thttpd服务器,运行在embedded式arm linux系统上的php,xml2和sqlite3。 一般来说,系统正在工作,但我的网站加载速度非常慢(每个站点大约20s,如果php&sqlite内容在网站或只是简单的HTML无所谓)。 检查顶部我可以看到,thttpd使用高达90%的CPU(400MHz的MX25)和caching10MB。 我怎样才能testing我的网站,find这个系统的瓶颈?

上传任何文件时,Apache会发生段错误

我已经在Amazon EC2微型实例上安装了默认的Ubuntu Server 12.04。 我已经安装了通常的,PHP,Apache,MySQL等。一切运行正常,直到我尝试通过PHP上传一些文件。 文件大小无关紧要。 它甚至发生5kb的jpeg文件。 我得到的是: [Thu Nov 08 18:52:11 2012] [notice] child pid 1199 exit signal Segmentation fault (11) 当我执行相同的代码,但没有提到图像,它的作品(但我需要的形象,当然) 我必须注意到,完全相同的代码在OpenSUSE 11.1机器上运行良好,我只是将其移到Amazon实例上进行进一步testing。 我已经安装了几十个服务器,从来没有遇到过这个错误。 我真的被卡住了,因为我找不到任何相关的东西。 uname -a给出 Linux server 3.2.0-31-virtual #50-Ubuntu SMP Fri Sep 7 16:36:36 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux Apache / 2.2.22(Ubuntu),PHP 5.3.10-1ubuntu3.4 PHPvariables: post_max_size 150M memory_limit 256M upload_max_filesize 150M […]