


PHP management nginx virtual host shell script, nginxshell_PHP tutorial
php manages nginx virtual host shell script, nginxshell
It is very convenient to use php as a shell script. Of course, we can use php scripts to manage nginx virtual hosts. Below is the author’s script file for your reference
Copy the code as follows
#!/usr/bin/php -q
start: fwrite(STDOUT,"========== =Vhost Script===========\n");
fwrite(STDOUT,"= Choose an operation \n");
fwrite(STDOUT,"= 1.Create 2. Delete 3.Exit\n");
fwrite(STDOUT,"================================== =\n");
$operate = trim(fgets(STDIN));
if ( $operate == 1 ){
fwrite(STDOUT,"Please Enter a Domain Name:");
$domain = trim(fgets(STDIN));
$path = "/home/sites/{$domain}";
$nginx_conf = "/etc/nginx/sites/{$domain}" ;
$nginx_template = "/etc/nginx/template/site_conf";
$apache_conf = "/etc/httpd/conf/httpd.conf";
$conf_str = "";
//Variable initialization
if( file_exists($path) ) exit ("Domain Existed!\n");
else mkdir($path,0700);
if(file_exists( $nginx_conf)) exit ("Nginx Config file existed!\n");
else {
$conf_str = file_get_contents( $nginx_template );
}
//Directory detection and configuration File copy
eval ( "\$conf_str = \"$conf_str\";" );
$succes = file_put_contents($nginx_conf,$conf_str);
if( !$ succes ) exit ("Write Config File Fauile!");
else echo "Create Vhost success!\n";
goto start;
//Write configuration file
}
else if ($operate == 2){
$confs_dir = dir("/etc/nginx/sites");
$confs_list = array();
$count = 0;
while ( false !== ( $conf_file = $confs_dir->read() ) ){
if( $conf_file == "." ) continue;
if( $conf_file == ".." ) continue;
if ( is_file( $confs_dir->path ."/". $conf_file) ) {
$confs_list[$count++] = $conf_file;
}
}
echo "Select a site by number which to delete:\n";
if( count( $confs_list ) >0 )
for(www.111cn.net)each ( $confs_list as $k=>$v ) {
echo "{$k}. $v\n";
}
$index = trim(fgets(STDIN));
if( in_array ( $index,array_keys( $confs_list ) ) ){
copy( $confs_dir->path ."/". $confs_list[$index],"/etc/nginx/backup/{$confs_list[$index]}" );
unlink ( $confs_dir->path ."/". $confs_list[$index] );
exec("tar -zcf /home/sites/{$confs_list[$index]}.tar.gz /home/sites/ ".$confs_list[$index] );
exec("rm -Rf /home/sites/".$confs_list[$index]);
}
//Delete the specified configuration and save the backup
}
else if( $operate == 3 ) {
exit;
}
else {
exit ("No Operation Selected!");
}?> ;
The following is the configuration template of nginx
Copy the code as follows
server {
listen 80;
server_name {$domain};
access_log /var/log/nginx/{$domain}_access_log;
error_log /var /log/nginx/{$domain}_error_log;
root {$path};
#Do not log access to site icons
location = /favicon.ico {
log_not_found off;
access_log off;
}
#Do not log access to robots.txt
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location = / {
try_files @proxy;
}
location / {
index index.htm index.html index.php;
try_files \$uri @proxy;
}
#Match html
location ~* \.(html|htm)$ {
expires 30s;
gzip off;
add_header Content-Encoding gzip;
try_files \$uri \ $uri/ /wp-content/cache/supercache/\$http_host/\$request_uri/index.html.gz @proxy;
}
#Match images, script files, etc.
location ~* \.(jpe?g|gif|png|ico|css|js|flv|swf|avi|zip|rar|svg|tgz|gz|rar |bz2|doc|xls|exe|pdf|ppt|txt|tar|mp3)$ {
expires 30d;
}
#Passed to apache
location @proxy {
index index.htm index.html index.php;
proxy_pass http://127.0.0.1:81;
include /etc/nginx /proxy.conf;
}
}
from:http://www.111cn.net/phper/php-cy/68199.htm
This is your default virtual host.
For example, if your server IP address is 10.10.10.10, then you add
server {
server_name 10.10.10.10;
listen 80;
location / {
in the nginx configuration rewrite (.*) http://domain name you want to redirect;
}
}
Just restart your nginx.
This can be used to install DreamWeaver.... If you want to configure lnmp locally, just install phphow, it's one-click. Just write down the data during the installation process. After reading the documentation, you will be able to use it...as long as you have the basics.
You can also install Dreamweaver directly on the virtual host... The premise is that you do not need to debug locally. You must know that Dreamweaver is just a CMS. You have to design templates and web pages.

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

Pagoda Panel is a very excellent server management panel under Linux system. It has powerful functions and friendly interface, which can help users manage servers easily. In the process of using the Pagoda Panel, it is sometimes necessary to limit the speed of the virtual host to ensure the stability and fluency of the server. This article will introduce how to set the speed limit of the virtual host through the Pagoda panel to achieve a good user experience. 1. Overview of Speed Limit Speed limit refers to limiting the host bandwidth and ensuring the normal operation of the server by controlling the host traffic. exist

The Gin framework is a lightweight web framework that provides the basic functionality needed to quickly build web applications. The Gin framework is flexible, efficient, and scalable, so it is widely used in the Internet field. Among them, the virtual host and domain name binding functions of the Gin framework are important features that other web frameworks do not have. This article will introduce this function in detail. 1. What is a virtual host? A virtual host creates multiple independent and mutually isolated virtual hosts on a physical host. Each virtual host has its own unique

Foreign free php virtual hosts include DreamHost, Bluehost, Hostinger, 000Webhost, FreeHostia, Zymic, ByetHost and SiteGround.

In the Internet age, web hosting is a very popular service that allows users to own their own website and manage it easily. However, when using virtual hosts, security issues must also attract our attention. In response to this situation, Pagoda Panel provides a good solution that can help us better protect the security of the virtual host. This article will introduce how to use the Pagoda panel to protect the security of virtual hosts. 1. Set the login password and port. Before using the Pagoda panel, the first step is to set a secure login password. default

How Nginx implements domain name-based virtual host configuration requires specific code examples. Nginx is a high-performance HTTP and reverse proxy server that provides flexible configuration options to implement domain name-based virtual host configuration. In this article, we will introduce in detail how to configure Nginx to implement domain name-based virtual hosting and provide specific code examples. First, we need to add the virtual host configuration block to the Nginx configuration file. On Ubuntu systems, the default configuration file path is /et

How PHP connects to Tencent Cloud Server ECS to implement cloud virtual host deployment Introduction: With the rapid development of cloud computing, more and more enterprises and developers choose to deploy applications to cloud servers to obtain better elasticity and security. and scalability. This article will introduce how to use PHP to connect with Tencent Cloud Server ECS (Elastic Compute Service) to implement cloud virtual host deployment. Step 1: Create a Tencent Cloud Server ECS instance. First, we need to

How to use Nginx to implement virtual host configuration based on domain name and path Introduction: In network application development, it is often necessary to configure multiple virtual hosts to provide different services. Nginx is a high-performance HTTP and reverse proxy server. By using Nginx, we can easily implement virtual host configuration based on domain name and path. This article will introduce how to use Nginx to implement such a configuration and give corresponding code examples. 1. The virtual host based on the domain name is configured in the Nginx configuration file, using

Nginx virtual host optimization configuration to improve website performance and user experience Introduction: Nowadays, with the continuous development of the Internet, the number of visits to the website is also increasing. As the entrance to the website, the optimized configuration of Nginx plays a crucial role in improving website performance and user experience. This article will introduce some methods for optimizing the configuration of Nginx virtual hosts, along with code examples so that you can better understand and apply them. 1. Configuration of virtual host Virtual host is an important concept in Nginx. Through the configuration of virtual host, we can
