系统管理员告诉我,在我的工作场所的网络服务器上更新php版本是不可能的,因为他们已经老了"。
这是真的吗?
PHP是否有任何硬件或系统要求?
由于
答案 0 :(得分:2)
PHP确实有Windows版本的官方支持,它们是详细的here。
在Unix机器上,任何系统管理员都可以在大多数机器上安装足够的PHP7。我的猜测是你的系统管理员更喜欢坚持他们首选的包管理器提供的PHP。例如,Debian 7只有PHP 5.4和默认的apt-get存储库。
答案 1 :(得分:2)
PHP并没有遇到任何硬件限制,但有一件事肯定会阻止你在旧的* nix系统上编译更新版本的PHP软件。
PHP的现代版本不能在较旧的* nix系统上编译,因为他们没有必要的工具来构建PHP(现代C编译器,半新版本的glibc,GNU make,Bison,许多PHP扩展将具有较新库版本的先决条件,这些版本与旧系统上安装的版本不兼容。)
这可能就是为什么他们这么说。我试图在RedHat 7.3上编译PHP 5.4而没有太多运气,因为所有这些用于编译软件的系统库和工具都太旧了。使用OpenSSL扩展,旧系统通常甚至没有正确的头文件,其中包含PHP在编译期间所期望的函数原型。
所以是的,在旧系统上编译PHP很困难或不可能(曾经尝试在旧机器上构建更新版本的libc ???这真是一场噩梦!)。
例如,我使用了PHP 5.6.22并开始在Red Hat Linux 7.3版(Valhalla)上编译并且没有达到目标......
第一个简单错误:
checking for zlib version >= 1.2.0.4... 1.1.4
configure: error: libz version greater or equal to 1.2.0.4 required
这很容易自行编译,但是我想要的许多其他扩展库都没有安装在系统上,并且尝试编译每个扩展可能都是它自己的漏洞。
所以我拿出了我们不必开头的那些,能够./configure
就好了,但不能太过make
......
php-5.6.22/ext/openssl/openssl.c: In function `php_openssl_get_stream_from_ssl_handle':
php-5.6.22/ext/openssl/openssl.c:581: warning: passing arg 1 of `SSL_get_ex_data' discards qualifiers from pointer target type
php-5.6.22/ext/openssl/openssl.c: In function `php_openssl_get_evp_cipher_from_algo':
php-5.6.22/ext/openssl/openssl.c:1092: warning: return makes pointer from integer without a cast
php-5.6.22/ext/openssl/openssl.c:1095: warning: return makes pointer from integer without a cast
php-5.6.22/ext/openssl/openssl.c:1098: warning: return makes pointer from integer without a cast
php-5.6.22/ext/openssl/openssl.c: In function `openssl_x509v3_subjectAltName':
php-5.6.22/ext/openssl/openssl.c:1874: `GENERAL_NAMES' undeclared (first use in this function)
...
php-5.6.22/ext/openssl/openssl.c: In function `zif_openssl_digest':
php-5.6.22/ext/openssl/openssl.c:5112: void value not ignored as it ought to be
make: *** [ext/openssl/openssl.lo] Error 1
所以使用OpenSSL游戏结束了(顺便说一下它的版本是0.9.6b,太老了!)。我可以编译更新的OpenSSL,因为我之前没有遇到过麻烦,但这个7.3系统也很特别。我们已经投入了大量精力为这个系统带来了不受支持的软件(libs和编译器)的新版本以保持它的存活,但是在较旧的版本上,我的运气却少得多。
所以是的,可能需要几天的时间才能让更新的PHP在旧系统上运行,并且这假设了很多关于如何在库路径之外构建和安装库的经验和知识(因此他们不会干扰其他事情)系统)然后获取新的东西以动态链接到那些)。
答案 2 :(得分:0)
这些是下载和安装WampServer的最低系统要求: 操作系统:Windows XP(32位或64位) HDD:200 MB可用空间。 内存:512 MB RAM。 完全管理员访问。
这些是在生产环境中首次安装后
你不受限制。 PROC:0直到你显示菜单,所有工作都由两个服务完成 RAM:只有服务,所以它取决于apache必须管理多少连接(本地使用1) HDD:这取决于您安装的插件/应用程序数量以及项目大小和数据库。