


Some common security configuration methods in php.ini_PHP tutorial
The article briefly introduces how to make some common security configurations in php.ini. Students in need can refer to it.
(1) Turn on the safe mode of php
PHP’s security mode is a very important built-in security mechanism. It can control some functions in PHP, such as system(). It also controls the permissions of many file operation functions and does not allow certain keyword files. files, such as /etc/passwd, but the default php.ini does not open safe mode, let’s open it:
safe_mode = on
(2) User group security
When safe_mode is turned on and safe_mode_gid is turned off, the php script can access the file, and users in the same group can also access the file. And users in the same group can also access the file.
Recommended settings are:
safe_mode_gid = off
If we do not set it up, we may not be able to operate the files in the directory of our server website, for example, when we need to operate files.
(3) Home directory for executing programs in safe mode
If safe mode is turned on but you want to execute certain programs, you can specify the home directory of the program to be executed:
safe_mode_exec_dir = /usr/bin
Generally, there is no need to execute any program, so it is recommended not to execute the system program directory. You can point to a directory: and then copy the program that needs to be executed, such as:
safe_mode_exec_dir = /temp/cmd
However, I recommend not to execute any program, then you can point to our web directory:
safe_mode_exec_dir = /usr/www
(4) Include files in safe mode
If you want to include certain public files in safe mode, then change the options:
safe_mode_include_dir = /usr/www/include/
In fact, generally the files included in php scripts have been written in the program itself. This can be set according to specific needs.
(5) Control the directories that php scripts can access
Using the open_basedir option can control the PHP script to only access the specified directory. This can prevent the PHP script from accessing files that should not be accessed. Certain programs show the harm of phpshell. We can generally set it to only access the website directory:
open_basedir = /usr/www
(6) Close dangerous functions
If safe mode is turned on, function prohibition is not necessary, but we still consider it for safety. For example, if we feel that we do not want to execute PHP functions that have clear execution, including system(), or functions such as phpinfo() that can view PHP information, then we can prohibit them:
disable_functions = system, passthru, exec, shell_exec, popen, phpinfo, escapeshellarg, escapeshellcmd, proc_close, proc_open, dl
If you want to prohibit any file and directory operations, you can close many file operations
disable_functions = chdir, chroot, dir, getcwd, opendir, readdir, scandir, fopen, unlink, delete, copy, mkdir, rmdir, rename, file, file_get_contents, fputs, fwrite, chgrp,chmod, chown
The above only lists some of the more commonly used file processing functions. You can also combine the above execution command function with this function to resist most phpshells.
(7) Close the leakage of php version information in the http header
In order to prevent hackers from obtaining the PHP version information in the server, we can turn off the leakage of this information in the http header:
expose_php = off
For example, when a hacker telnet www.girlcoding.com:80, he will not be able to see PHP information
(8) Close registered global variables
Variables submitted in PHP, including those submitted using POST or GET, will be automatically registered as global variables and can be accessed directly. This is very unsafe for the server, so we cannot let it be registered as global variables. Just turn off the register global variable option:
register_globals = off
Of course, if this is set up, then reasonable methods must be used to obtain the corresponding variables. For example, to obtain the variable var submitted by GET, then $_GET['var'] must be used to obtain it. This PHP programmer needs to Notice.
(9) Turn on magic_quotes_gpc to prevent SQL injection
SQL injection is a very dangerous problem. It can cause the website backend to be invaded, or the entire server to fall, so be careful. There is a setting in php.ini:
magic_quotes_gpc = off
This is turned off by default. If it is turned on, it will automatically convert user-submitted sql queries, such as 'convert to', etc. This is very effective in preventing sql injection, so we recommend setting it to:
magic_quotes_gpc = off
There was a time when the program did not work when uploading locally, but it worked fine on the server~ It may also be caused by inheriting the core file of discuz, and there was a problem in obtaining the path. Later, I turned on this parameter and the problem was solved.
(10) Error message control
Generally, PHP will have an error message when it is not connected to the database or under other circumstances. Generally, the error message will contain the current path information of the PHP script or the SQL statement of the query. This kind of information is not safe after being provided to hackers. , so it is generally recommended that servers disable error prompts:
display_errors = Off
If you really want to display error messages, be sure to set the level of display errors, such as only displaying information above warnings:
error_reporting = E_WARNING & E_ERROR
Of course, I still recommend turning off error prompts.
(11) Error log
It is recommended to record the error message after closing display_errors to facilitate finding the reason for the server operation:
log_errors = On
At the same time, you must also set the directory where the error log is stored. It is recommended that the root apache log be stored together:
error_log = /usr/local/apache2/logs/php_error.log
Note: The apache user or group must have write permissions for the file.

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

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

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





Unfortunately, people often delete certain contacts accidentally for some reasons. WeChat is a widely used social software. To help users solve this problem, this article will introduce how to retrieve deleted contacts in a simple way. 1. Understand the WeChat contact deletion mechanism. This provides us with the possibility to retrieve deleted contacts. The contact deletion mechanism in WeChat removes them from the address book, but does not delete them completely. 2. Use WeChat’s built-in “Contact Book Recovery” function. WeChat provides “Contact Book Recovery” to save time and energy. Users can quickly retrieve previously deleted contacts through this function. 3. Enter the WeChat settings page and click the lower right corner, open the WeChat application "Me" and click the settings icon in the upper right corner to enter the settings page.

Setting font size has become an important personalization requirement as mobile phones become an important tool in people's daily lives. In order to meet the needs of different users, this article will introduce how to improve the mobile phone use experience and adjust the font size of the mobile phone through simple operations. Why do you need to adjust the font size of your mobile phone - Adjusting the font size can make the text clearer and easier to read - Suitable for the reading needs of users of different ages - Convenient for users with poor vision to use the font size setting function of the mobile phone system - How to enter the system settings interface - In Find and enter the "Display" option in the settings interface - find the "Font Size" option and adjust it. Adjust the font size with a third-party application - download and install an application that supports font size adjustment - open the application and enter the relevant settings interface - according to the individual

Mobile games have become an integral part of people's lives with the development of technology. It has attracted the attention of many players with its cute dragon egg image and interesting hatching process, and one of the games that has attracted much attention is the mobile version of Dragon Egg. To help players better cultivate and grow their own dragons in the game, this article will introduce to you how to hatch dragon eggs in the mobile version. 1. Choose the appropriate type of dragon egg. Players need to carefully choose the type of dragon egg that they like and suit themselves, based on the different types of dragon egg attributes and abilities provided in the game. 2. Upgrade the level of the incubation machine. Players need to improve the level of the incubation machine by completing tasks and collecting props. The level of the incubation machine determines the hatching speed and hatching success rate. 3. Collect the resources required for hatching. Players need to be in the game

Mobile phone film has become one of the indispensable accessories with the popularity of smartphones. To extend its service life, choose a suitable mobile phone film to protect the mobile phone screen. To help readers choose the most suitable mobile phone film for themselves, this article will introduce several key points and techniques for purchasing mobile phone film. Understand the materials and types of mobile phone films: PET film, TPU, etc. Mobile phone films are made of a variety of materials, including tempered glass. PET film is relatively soft, tempered glass film has good scratch resistance, and TPU has good shock-proof performance. It can be decided based on personal preference and needs when choosing. Consider the degree of screen protection. Different types of mobile phone films have different degrees of screen protection. PET film mainly plays an anti-scratch role, while tempered glass film has better drop resistance. You can choose to have better

In the security comparison between Slim and Phalcon in PHP micro-frameworks, Phalcon has built-in security features such as CSRF and XSS protection, form validation, etc., while Slim lacks out-of-the-box security features and requires manual implementation of security measures. For security-critical applications, Phalcon offers more comprehensive protection and is the better choice.

Age spots are a common skin problem that tend to appear on the faces of older adults on exposed areas such as the neck and back of hands. It will also make people look older. It not only brings trouble to people's appearance. With the advancement of science and technology and the development of beauty technology, there are now many simple and quick ways to remove age spots, however. To restore young and healthy skin and help you eliminate age spots quickly, this article will share some effective skin care tips. 1. The importance of actively protecting the skin from ultraviolet damage, so it is very important to avoid prolonged exposure to the sun. Ultraviolet rays are one of the main causes of age spots. 2. Choose skin care products reasonably and use products containing antioxidants and whitening ingredients. Skin care products containing antioxidants and whitening ingredients can help reduce the appearance of age spots.

Java framework design enables security by balancing security needs with business needs: identifying key business needs and prioritizing relevant security requirements. Develop flexible security strategies, respond to threats in layers, and make regular adjustments. Consider architectural flexibility, support business evolution, and abstract security functions. Prioritize efficiency and availability, optimize security measures, and improve visibility.

To protect your Struts2 application, you can use the following security configurations: Disable unused features Enable content type checking Validate input Enable security tokens Prevent CSRF attacks Use RBAC to restrict role-based access
