Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

233
Visualizações
pymysql no se ejecuta en python cgi

Estoy usando CentOs 7 y ya instalé Apache2. Intento ejecutar un script cgi con Python 3. Tengo un archivo llamado index.py con el siguiente código:

 #!/usr/bin/env python3.7 import platform import pymysql import cgitb cgitb.enable() print ("Content-type: text/html\r\n\r\n") print ("<html>\n<body>") print ("<div style=\"width: 100%; font-size: 40px; font-weight: bold; text-align: center;\$ connection = pymysql.connect(host='127.0.0.1', user='user', password='password', db='database', charset='utf8mb4', cursorclass=pymysql.cursors.DictCursor) try: with connection.cursor() as cursor: sql = "SELECT * FROM Marken" cursor.execute(sql) rows = cursor.fetchall() for row in rows: print(row['ID'], row['markenName'], '</br>') finally: connection.close() print ("Python Script Test Page", platform.python_version()) print ("</div>\n</body>\n</html>")

lo que da un error de servidor interno 500.

Agregué las siguientes líneas a apache httpd.conf:

 <Directory "/var/www/html/cgi"> Options +ExecCGI AddHandler cgi-script .py </Directory>

e hizo que el archivo fuera accesible a través de sudo chmod 755 var/www/html/cgi/index.py

Entonces, si comento todo el código pymysql y lo pruebo en el navegador, imprime el texto esperado de la página de prueba de Python y la versión 3.7.4 de la plataforma python. Ni siquiera puedo importar pymysql ya que da un error de servidor. Con mysql.connector tuve el mismo problema. Si ejecuto el script como un script independiente con el código pymysql, funciona bien en Shell.

Configuro mi sistema como usuario no root con acceso sudo. ¿Es este el problema? y ¿hay tal vez alguna variable de entorno para establecer?

¿Qué estoy haciendo mal?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

<VirtualHost *:80> <Directory "/var/www/html/cgi"> Options +ExecCGI DirectoryIndex index.py </Directory> AddHandler cgi-script .py DocumentRoot /var/www/html/cgi </VirtualHost>

en la sección de configuración de apache, no definió el índice de directorio para el archivo python. también defina DocumentRoot para que el archivo de índice de python pueda apuntar a la ruta correcta. según la documentación que necesita para eliminar el controlador del directorio.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda