PHP 正则表达式婚配替换,导致APACHE停止工作
PHP 正则表达式匹配替换,导致APACHE停止工作
今天发现,模板引擎里的一段代码,当匹配很多的中文文字时,APACHE会停止工作。
$source = "习近平强调,要深入抓好铸魂育人,认真贯彻全军政治工作会议精神,掌握部队思想动态,有针对性抓好思想教育,
引导官兵坚决听党指挥,争做新一代革命军人。要深入抓好练兵备战,强化当兵打仗、带兵打仗思想,培育战斗精神,
抓好实战化军事训练,不断提高履行使命任务能力。要深入抓好正风肃纪,巩固和深化群众路线教育实践活动成果。";
$source=preg_replace("/([^a-zA-Z0-9_]{1,1})+(copy|fputs|fopen|file_put_contents|fwrite|eval|phpinfo)+( |\()/is", "", $source);
var_dump($source);
这一段正则的意思是什么? 把^去掉好像就可以?应该如何解决,谢谢
------解决思路----------------------
([^a-zA-Z0-9_]{1,1})+ 至少匹配一个除了 a-zA-Z0-9的字符
(copy
------解决思路----------------------
fputs
------解决思路----------------------
fopen
------解决思路----------------------
file_put_contents
------解决思路----------------------
fwrite
------解决思路----------------------
eval
------解决思路----------------------
phpinfo)+ 后面紧接这这些函数中的任意一个
(
------解决思路----------------------
\() 后面紧接着空格或“(”
is 不区分大小写,忽略换行
<br />$source = "习近平强调,要深入抓好铸魂育人,认真贯彻全军政治工作会议精神,掌握部队思想动态,有针对性抓好思想教育,<br />引导官兵坚决听党指挥,争做新一代革命军人。要深入抓好练兵备战,强化当兵打仗、带兵打仗思想,培育战斗精神,<br />抓好实战化军事训练,不断提高履行使命任务能力file_put_contents(。要深入抓好正风肃纪,巩固和深化群众路线教育实践活动成果。";<br /><br />$new=preg_replace("/([^a-zA-Z0-9_]{1,1})+(copy<br><font color='#FF8000'>------解决思路----------------------</font><br>fputs<br><font color='#FF8000'>------解决思路----------------------</font><br>fopen<br><font color='#FF8000'>------解决思路----------------------</font><br>file_put_contents<br><font color='#FF8000'>------解决思路----------------------</font><br>fwrite<br><font color='#FF8000'>------解决思路----------------------</font><br>eval<br><font color='#FF8000'>------解决思路----------------------</font><br>phpinfo)+( <br><font color='#FF8000'>------解决思路----------------------</font><br>\()/is", "", $source);<br /><br />echo $new; //。要深入抓好正风肃纪,巩固和深化群众路线教育实践活动成果。<br />
作用可能是替换掉这些函数copy
------解决思路----------------------
fputs
------解决思路----------------------
fopen
------解决思路----------------------
file_put_contents
------解决思路----------------------
fwrite
------解决思路----------------------
eval
------解决思路----------------------
phpinfo
------解决思路----------------------
wamp能运行
^ 是“除了”某某
[^a-zA-Z0-9_] 这表示 除了 a-zA-Z0-9_ 这些字符集合之外的字符都匹配
看起来,也没什么问题,不知道apache停掉的原因,可以看看apache的日志
------解决思路----------------------
打开错误提示没有? 另外,楼主是怎么知道Apache停止工作的。

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

According to benchmarks, Laravel excels in page loading speed and database queries, while CodeIgniter excels in data processing. When choosing a PHP framework, you should consider application size, traffic patterns, and development team skills.

Concurrent programming is implemented in Go through Goroutine and concurrency control tools (such as WaitGroup, Mutex), and third-party libraries (such as sync.Pool, sync.semaphore, queue) can be used to extend its functions. These libraries optimize concurrent operations such as task management, resource access restrictions, and code efficiency improvements. An example of using the queue library to process tasks shows the application of third-party libraries in actual concurrency scenarios.

Concurrency testing and debugging Concurrency testing and debugging in Java concurrent programming are crucial and the following techniques are available: Concurrency testing: Unit testing: Isolate and test a single concurrent task. Integration testing: testing the interaction between multiple concurrent tasks. Load testing: Evaluate an application's performance and scalability under heavy load. Concurrency Debugging: Breakpoints: Pause thread execution and inspect variables or execute code. Logging: Record thread events and status. Stack trace: Identify the source of the exception. Visualization tools: Monitor thread activity and resource usage.

There are a variety of attack methods that can take a website offline, and the more complex methods involve technical knowledge of databases and programming. A simpler method is called a "DenialOfService" (DOS) attack. The name of this attack method comes from its intention: to cause normal service requests from ordinary customers or website visitors to be denied. Generally speaking, there are two forms of DOS attacks: the third and fourth layers of the OSI model, that is, the network layer attack. The seventh layer of the OSI model, that is, the application layer attack. The first type of DOS attack - the network layer, occurs when a large number of of junk traffic flows to the web server. When spam traffic exceeds the network's ability to handle it, the website goes down. The second type of DOS attack is at the application layer and uses combined

To add a server to Eclipse, follow these steps: Create a server runtime environment Configure the server Create a server instance Select the server runtime environment Configure the server instance Start the server deployment project

1. Background of the Construction of 58 Portraits Platform First of all, I would like to share with you the background of the construction of the 58 Portrait Platform. 1. The traditional thinking of the traditional profiling platform is no longer enough. Building a user profiling platform relies on data warehouse modeling capabilities to integrate data from multiple business lines to build accurate user portraits; it also requires data mining to understand user behavior, interests and needs, and provide algorithms. side capabilities; finally, it also needs to have data platform capabilities to efficiently store, query and share user profile data and provide profile services. The main difference between a self-built business profiling platform and a middle-office profiling platform is that the self-built profiling platform serves a single business line and can be customized on demand; the mid-office platform serves multiple business lines, has complex modeling, and provides more general capabilities. 2.58 User portraits of the background of Zhongtai portrait construction

To successfully deploy and maintain a PHP website, you need to perform the following steps: Select a web server (such as Apache or Nginx) Install PHP Create a database and connect PHP Upload code to the server Set up domain name and DNS Monitoring website maintenance steps include updating PHP and web servers, and backing up the website , monitor error logs and update content.

An important task for Linux administrators is to protect the server from illegal attacks or access. By default, Linux systems come with well-configured firewalls, such as iptables, Uncomplicated Firewall (UFW), ConfigServerSecurityFirewall (CSF), etc., which can prevent a variety of attacks. Any machine connected to the Internet is a potential target for malicious attacks. There is a tool called Fail2Ban that can be used to mitigate illegal access on the server. What is Fail2Ban? Fail2Ban[1] is an intrusion prevention software that protects servers from brute force attacks. It is written in Python programming language
