标签: php

生产服务器不区分大小写的文件系统?

初始情况如下所示:

  • 公司软件是基于 PHP 的。
  • 它由 Windows 2003 Server 上的 Apache 2 提供。
  • 很大
  • 这是相当不专业的开发人员的遗产,他们不介意区分大小写或目录分隔符。

所需的情况如下所示:

  • 在尚未确定风格的 Linux 发行版下,一切都迁移到了 Apache 2。

问题:

  • 无休止的大量代码,无需关心区分大小写或目录分隔符。

我已经做了一些研究,但不幸的是没有找到任何适合生产环境的东西。CIOPFS看起来不错,但明确表示不能在生产系统上使用。你认为mod_spellingApache 会是一个选择吗?对我来说尚未解决的问题是,PHP 是否在该模块的帮助下或直接访问文件(这将使其无用)。

我们是否应该吞下苦果并仔细阅读所有代码?我们希望避免这种情况,因为我们将用新的构建内容(长期)逐步替换当前的软件环境。

filesystems migration php case-sensitivity apache-httpd

11
推荐指数
1
解决办法
8412
查看次数

如何在 Debian Wheezy 上安装带有可用交互提示的 PHP CLI?

当我在 Debian Wheezy(目前正在测试)上安装 php5-cli 时,由于缺少 readline 支持(错误341868),交互式提示非常不可用。安装与 libreadline 链接的版本(用于可用的行编辑)的最简单方法是什么?

command-line debian php readline

10
推荐指数
2
解决办法
7万
查看次数

Vim,上下文敏感的注释/取消注释行为

我用 Vim 编辑了很多 PHP 代码,但在我的.vimrc.

我目前使用这两个宏在 C 风格中注释/取消注释

"c-style (//) comment (press the [.] key)
au FileType php vnoremap . :s/^\(\s*\)\(.\+\)$/\1\/\/\2/<CR>:noh<CR>gv
"c-style (//) uncomment (press the [,] key)
au FileType php vnoremap , :s/^\(\s*\)\/\//\1/<CR>:noh<CR>gv
Run Code Online (Sandbox Code Playgroud)

这两个以 HTML 样式注释/取消注释

"html-style (<!-- -->) comment (press the [.] key)
au FileType html vnoremap . :s/^\(\s*\)\(.\+\)$/\1<!-- \2 -->/g<CR>:noh<CR>gv
"html-style (<!-- -->) uncomment (press the [,] key)
au FileType html vnoremap , :s/^\(\s*\)<!-- \(.*\) -->/\1\2/g<CR>:noh<CR>gv
Run Code Online (Sandbox Code Playgroud)

这些宏在应用于其预期的文件类型时工作正常,但由于 PHP 文件中通常嵌入了 HTML,因此 PHP 注释样式是无用的。

Vim 有没有办法检测它是否正在处理 PHP …

vim php

9
推荐指数
1
解决办法
472
查看次数

找出屏幕ID

我想用 PHP 用 SSH 启动一个程序,效果很好,但现在我想用 PHP 杀死屏幕,但我唯一知道的是屏幕的名称。如何(自动)找出屏幕 ID?

ssh ubuntu gnu-screen php

9
推荐指数
1
解决办法
2万
查看次数

可以利用 bash 脚本参数吗?

我想将电子邮件地址从 Web 表单传递到 bash 脚本。我正在使用以下正则表达式:

/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}/
Run Code Online (Sandbox Code Playgroud)

这足够了吗?或者可以嵌入漏洞利用?

该脚本是从 PHP 调用的:

system('/usr/local/bin/script.sh "$email"');
Run Code Online (Sandbox Code Playgroud)

shell security php regular-expression

9
推荐指数
1
解决办法
1350
查看次数

SELinux 阻止 NGINX 通过 PHP-FPM 编写

我正在使用服务器通过NGINX使用php-fpm写入NFS 类型的挂载点。在第一步,它向我显示以下错误:

2017/01/16 11:32:59 [error] 55463#0: *22 FastCGI sent in stderr: "PHP message: PHP Warning:  mkdir(): Permission denied in /var/www/html/x/x.php on line 75
PHP message: PHP Warning:  mkdir(): Permission denied in /x/x/x/x/x.php on line 79
PHP message: PHP Warning:  mkdir(): Permission denied in /x/x/x/x/x.php on line 83
PHP message: PHP Warning:  mkdir(): Permission denied in /x/x/x/x/x.php on line 87
PHP message: PHP Warning:  mkdir(): Permission denied in /x/x/x/x/x.php on line 91
PHP message: PHP …
Run Code Online (Sandbox Code Playgroud)

security rhel selinux php nginx

9
推荐指数
2
解决办法
2万
查看次数

在 Debian Stretch 上安装 PHP 5.3 (9)

我正在将一个非常旧的服务器(Debian etch)迁移到 Debian Stretch,并且开发的每个应用程序都有 PHP 问题,这是意料之中的。有些可以修复,有些不能(如几个 drupal 6 站点)。将来,单个应用程序将在 PHP7.0 下提供服务,但在那一天到来之前,我需要 PHP5.3 为它们提供服务。

我知道 Debian stretch 对可共同安装的 PHP 版本有某种“本机”支持,但我发现的所有示例都使用 PHP5.6(Jessie 的版本):https ://pehapkari.cz/blog/2017/03/27 /multiple-php-versions-the-easy-way/

另外,我发现了一些 PHP5.3 和 PHP5.4 或 PHP5.6 在 Debian Jessie、Wheezy 等上协同工作的示例,但不适用于 Debian Stretch (PHP7.0):https ://superuser.com/questions/913792 /php-5-3-10-on-debian-jessie

所以,首先,我需要知道在 Debian Stretch上的 apache2是否可以让 PHP7.0 和 PHP5.3 一起工作

其次,我需要弄清楚如何做到这一点

我不是系统管理员,所以我的 debian 知识从头开始一天天地增长。

谢谢你。

debian php php5 php7

9
推荐指数
2
解决办法
3万
查看次数

在前一个回声的同一位置在控制台中打印一些东西,带有一种负面回声

在 bash 中,您可以投射一个名为clear清除所有屏幕命令的命令。

并与echo您可以打印你想要的任何屏幕上..

在我的简单脚本中,我经常需要打印我的命令所做的工作的百分比。

所以我可以做类似的事情..

echo "89%"
echo "90%"
echo "91%"
Run Code Online (Sandbox Code Playgroud)

等等..

我讨厌的是让屏幕充满百分比更新......

89%
90%
91%
...
Run Code Online (Sandbox Code Playgroud)

我想知道是否有一个特殊的字符组合(例如“\033[01;31m”)可以用 bash 或 php echo 回显并告诉控制台“删除最后一个打印的字符..”

通过使用类似的东西来做到这一点:(php示例)

echo str_repeat($neg_character, strlen($last_percentage_update_string));
echo $new_percentage_update_string;
Run Code Online (Sandbox Code Playgroud)

我会在前一个的确切位置打印新字符串,而不会让屏幕充满线条

否则,我会寻找一种方法,以其他方式始终使用 bash 和 php 脚本(请至少包含 debian9 控制台和 php7 的实际工作示例)

linux bash php console

9
推荐指数
1
解决办法
1万
查看次数

在 CentOS 6.5 上使用 yum 的 PHP 5.5.13

我在 CentOS 6.5(64 位)机器上通过yum.

据我所知,它不是 CentOS、EPEL 或 REMI 存储库的一部分。我使用这些存储库中的任何一个获得 5.4.29。

centos php

8
推荐指数
1
解决办法
5万
查看次数

Apache and php not working child pid xxx exit signal Segmentation fault (11)

更改我的 php.ini 文件后,我收到如下所示的错误消息。

vim /etc/php.ini

; 脚本可能消耗的最大内存量(128MB)
http://www.php.net/manual/en/ini.core.php#ini.memory-limit
memory_limit = 1536

Apache 启动了,但它不会为我之前所做的任何虚拟主机提供服务。我没有看到任何地方列出任何 php 错误。我不确定我需要做什么来解决这个问题。

2015 年 4 月 30 日星期四 08:29:06] [通知] 捕获了 SIGTERM,正在关闭
[2015 年 4 月 30 日星期四 08:29:07] [警告] 初始化:基于名称的 SSL 虚拟主机仅适用于具有 TLS 服务器名称指示支持 (RFC 4366) 的客户端
[2015 年 4 月 30 日星期四 08:29:07] [通知] 摘要:生成摘要认证的秘密......
[2015 年 4 月 30 日星期四 08:29:07] [通知] 摘要:完成
[2015 年 4 月 30 日星期四 08:29:07] [警告] 初始化:基于名称的 SSL 虚拟主机仅适用于具有 TLS 服务器名称指示支持 (RFC 4366) 的客户端
[2015 年 4 月 …

linux php apache-httpd

8
推荐指数
1
解决办法
5万
查看次数