Utilice comandos de línea en Python para crear un servidor HTTP y acceder a él a través de la red externa

1. Introducción

Como lenguaje de programación relativamente popular, Python tiene una sintaxis simple y declaraciones claras. Python tiene buena compatibilidad y se puede conectar fácilmente con módulos establecidos en otros lenguajes de programación (como C/C++). Además, Python es rico y poderoso. La biblioteca está encapsulada y se puede llamar fácilmente, por lo que es muy popular.

Hoy intentaremos usar Python para construir un servidor http simple para mostrar los directorios y archivos especificados en la computadora local.

2. Configure el servidor http local

En términos generales, el servidor http simple de Python no depende de programas de servidor complejos como Apache e IIS, porque viene con una sola línea de comandos para crear un servicio http. Pero, por el contrario, este simple servicio http no puede proporcionar funciones complejas y solo puede proporcionar servicios de directorio relativamente simples. Pero para aquellos que quieran aprender y familiarizarse con Python, este es otro paso que deben dar.

2.1.Instalación y configuración de Python

Primero, necesitamos instalar el programa Python localmente. El programa Python se puede descargar desde su sitio web oficial ( www.python.org/ ) para encontrar la versión del sistema operativo correspondiente. El autor utiliza el sistema operativo Windows, así que elegí la versión de Windows para descargar.

20230330132801

20230330132802

Una vez completada la descarga de Python, haga clic en installer.exe directamente para instalarlo. Al mismo tiempo, cabe señalar que durante el proceso de instalación es necesario prestar atención a la comprobación de Add python.exe to PATHlas opciones.

20230330132803

20230330132804

Después de completar la instalación del programa Python, podemos comenzar a configurar el servidor http de Python.

2.2.Configuración y prueba del servidor Python

Dado que Python tiene un paquete de servicio http simple incorporado, para Python, solo necesita ingresar una línea de comandos para abrir fácilmente el servicio http. Por supuesto, para ejecutar una página web, es necesario mostrar contenido. Entonces, primero podemos crear una carpeta para almacenar archivos de páginas web. Por ejemplo, el autor creó una nueva carpeta de "prueba" en la unidad E de la computadora local.

20230330132805

Luego, ejecute la interfaz de la computadora local como administrador 命令提示符e ingrese el comando para transferir el disco duro donde está almacenado el archivo.

e:

Luego ve a la carpeta que deseas compartir.

cd test

20230330132806

20230330132807

Luego ingresa el comando启动http服务

  • Si la versión de Python es 2.x, ingrese el comando
python -m SimpleHTTPServer 8081
  • Si la versión de Python es 3.x, ingrese el comando
python -m http.server 8001

8081 es el puerto de salida del servidor que planeas construir, simplemente elige un puerto desocupado. Si aparece un mensaje de firewall, simplemente selecciónelo 允许访问.

Después de ingresar la línea de comando, Python proporciona comentarios Serving HTTP on 0.0.0.0 port 8081 ..., lo que significa que nuestro servicio http de Python se ha abierto correctamente en el puerto local 8081.

20230330132808

Luego ingresamos en la barra de direcciones del navegador en la computadora local localhost:8081para abrir el archivo en la carpeta que pretendemos compartir.

20230330132809

Si puede ver estos contenidos, significa que el servicio http de Python en la computadora local se ha abierto y los archivos en esta carpeta ya se pueden ver. De manera similar, si colocamos un archivo de página web en esta carpeta, también se puede mostrar como una página web.

En este momento, para dispositivos bajo la misma LAN, siempre que ingrese la dirección IP de la computadora local + el número de puerto en el navegador (el formato específico es 192.168.XXX.XXX: número de puerto), se mostrará la página web de Python.

20230330132810

Sin embargo, las páginas web a las que no se puede acceder en la Internet pública siempre sienten falta de alma, por lo que podemos usar la penetración de la intranet cpolar para crear un túnel de datos de penetración de la intranet, de modo que podamos acceder a Python en condiciones de la Internet pública.

3.Instalación y registro de cpolar.

Del mismo modo, podemos encontrar el software correspondiente a la versión del sistema operativo en la web oficial de cpolar ( https://www.cpolar.com/ ), aquí el autor también elige la versión de Windows.

20230330132811

20230330132812

Una vez descargado el software Cpolar, descomprima el paquete comprimido y haga doble clic en él para .msi文件instalarlo automáticamente, solo Nextnecesitamos hacer clic hasta el final.

20230330132813

20230330132814

Dado que cpolar creará un túnel de datos independiente para cada usuario, complementado con contraseñas de usuario y códigos de token para garantizar la seguridad de los datos, debemos registrar a los usuarios antes de usar cpolar. El proceso de registro también es muy sencillo: simplemente haga clic en la esquina superior derecha de la página de inicio de cpolar 用户注册y complete la información necesaria en la página de registro para completar el registro.

20230330132815

20230330132816

3.1 Configuración de la nube polar

Después de completar la instalación y el registro de cpolar, podemos comenzar a usar cpolar para crear un túnel de datos de penetración de intranet para conectar la página web Python de la computadora local a la Internet pública. Cabe destacar que el túnel de datos de la versión gratuita de cpolar se resetea cada 24 horas. El autor no quiere restablecer la configuración del túnel de datos todos los días, por lo que actualicé cpolar a la versión VIP para poder obtener un túnel de datos de penetración de intranet que pueda existir de manera estable durante mucho tiempo.

Para generar un túnel de datos de penetración de intranet estable a largo plazo, primero debemos visitar el sitio web oficial de cpolar e iniciar sesión, y en el lado izquierdo de la página "Panel", busque y haga clic en el botón para ingresar a la página "Reserva" 预留.

20230330132817

20230330132818

En la página "Reserva", podemos ver que cpolar proporciona proyectos de reserva de túneles de datos para múltiples protocolos. El servidor Python es el protocolo http, por lo que encontramos 保留二级子域名el campo. Por supuesto, si ha comprado su propio nombre de dominio a un proveedor de nombres de dominio, también puede seleccionar el campo "Reservar nombre de dominio personalizado".

En el campo "Nombre de subdominio de segundo nivel reservado", debemos configurar la información para el nombre de subdominio de segundo nivel que pretendemos reservar, y la información configurada también se convertirá en la entrada del túnel para que podamos acceder al servidor Python local en la Internet pública (la parte de la dirección pública de Internet). La información específica que debe configurarse es:

  • 地区: El área donde se encuentra el servidor, solo selecciona el más cercano
  • 二级域名eventualmente aparecerá en la dirección pública de Internet generada como uno de los identificadores de la dirección de red
  • 描述Puede considerarse como una descripción de este túnel de datos, que se puede distinguir de otros túneles.

Después de ingresar esta configuración, puede hacer clic en 保留el botón de la derecha para conservar este túnel de datos. Si ya no queremos la entrada a este túnel, también podemos hacer clic en la "x" a la derecha para eliminar fácilmente el túnel.

20230330132819

3.2 Configuración local polar

Después de completar la configuración de la nube cpolar, regresamos a la computadora local, abrimos e iniciamos sesión en el cliente cpolar (puede ingresar localhost: 9200 en el navegador para acceder directamente, o puede hacer clic en el acceso directo del cliente cpolar en el menú de inicio).

20230330132820

隧道管理Haga clic en el botón en el lado izquierdo de la interfaz principal del cliente 创建隧道para ingresar a la página de creación del túnel local (si desea crear un túnel de datos temporal que restablezca la dirección cada 24 horas, puede configurarlo directamente aquí sin configurar datos en blanco). túnel en el sitio web oficial de cpolar).

En esta página, también debe realizar varias configuraciones de información, que incluyen:

  1. 隧道名称——Puede considerarse como la anotación de información del túnel local de cpolar, siempre que nos resulte conveniente distinguirla;
  2. 协议——Tomcat genera una página web, por lo que se selecciona el protocolo http;
  3. 本地地址——La dirección local es el número de puerto de salida del sitio web local. Anteriormente configuramos 8081 como puerto de salida, por lo que también completamos 8081 aquí;
  4. 域名类型——En este ejemplo, hemos reservado el túnel de datos del nombre de subdominio de segundo nivel en la nube cpolar, así que marque "Nombre de subdominio de segundo nivel" (si el nombre de dominio reservado es un nombre de dominio personalizado, marque el nombre de dominio personalizado ), Y complete el nombre del subdominio reservado de segundo nivel en la columna "Subdominio" en la siguiente línea. Aquí completamos "pythonweb" (si solo crea un túnel de datos temporal, marque directamente "Nombre de dominio aleatorio" y el cliente cpolar generará la dirección de red por sí solo);
  5. 地区——Igual que cuando configuramos la nube cpolar, la completamos de acuerdo con la ubicación real;

20230330132821

Después de completar esta configuración, puede hacer clic en 创建el botón en la parte inferior de la página para conectar la página web del servidor Python local con el nombre de subdominio de segundo nivel reservado en la nube cpolar para generar un túnel de datos de penetración de intranet completo.

Una vez creado el túnel, cpolar saltará automáticamente a 隧道管理la 隧道列表página, donde podrá ver el estado del túnel de datos (si es fluido) o controlar la apertura, el cierre o la eliminación del túnel. Si necesita cambiar la información del túnel, también puede hacerlo a través del botón "Editar" aquí.

20230330132822

4. Prueba de acceso a la red pública

Una vez establecido el túnel de datos, podemos hacer clic en el lado izquierdo del cliente cpolar 状态- 在线隧道列表. Busque la dirección pública de Internet que permite el acceso a la página del servidor Python local.

20230330132823

Siempre que ingrese esta dirección en la dirección del navegador, podrá acceder fácilmente a la página del servidor Python en su computadora local.

20230330132824

5. Conclusión

Hasta ahora, hemos utilizado Python con éxito para crear una página de servidor simple y hemos creado un túnel de datos a través de cpolar que puede atravesar la barrera de la intranet y publicar esta página web de Python en la Internet pública. De hecho, siempre que conozcamos el número de puerto de salida de la página web (o software), podemos usar cpolar para penetrar en la intranet, permitiéndonos acceder a la página web local (o software) en la Internet pública.

Supongo que te gusta

Origin blog.csdn.net/cdtu_mid/article/details/132277260
Recomendado
Clasificación