php - IIS 服务器中来自 PHP 的 Python [WinError -2147024891] 访问被拒绝
问题描述
我尝试在 IIS win 8.1 中使用 PHP 运行 Python 脚本以将 Docx 文件转换为 PDF
import sys
import os
import comtypes.client
import random
import string
import qrcode
import fitz
from PyPDF2 import PdfFileReader
import json
import base64
import getpass
errordata=0
_output=[]
# convert Docx file into pdf file
def word_to_pdf(_in):
global errordata
pdf_format_key = 17
try:
file_in = os.path.abspath(_in)
head =os.path.split(_in)
_out=str((head[0]+'\\'+os.path.splitext(head[1])[0]+'.pdf'))
file_out = os.path.abspath(_out)
worddoc = comtypes.client.CreateObject('word.application')
doc = worddoc.Documents.open(file_in)
print ("documnt open")
doc.SaveAs(file_out,FileFormat=pdf_format_key)
errordata=0
_output.append('convert to PDF Success')
except Exception as e:
errordata=1
_output.append('convert to PDF Error' + str(e))
finally:
print(_output)
if errordata==0:
randid='_'+ id_generator(30, string.ascii_uppercase + string.digits)
qr_generator(randid,_out)
word_to_pdf(sys.argv[1])
这就是我从 PHP 调用 python 的方式:
<?php
$result = shell_exec('C:\Users\IT\AppData\Local\Programs\Python\Python38-32\python C:\inetpub\wwwroot\PyTest\document_control.py C:\inetpub\wwwroot\PyTest\upload\testdoc.docx 2>&1');
echo($result);
?>
当我运行 PHP 它触发错误:[WinError -2147024891] Access is denied']
我从 cmd 管理员和 cmd 用户运行脚本脚本按预期运行
我尝试给每个人上传文件夹的读/写权限,但错误仍然存在
请大家帮帮我
解决方案
推荐阅读
- javascript - 加载太快时无法获取 URL 的标题
- javascript - 使用javascript从子表中获取名称值
- javascript - Aurelia - 如何在路线的子容器中注册单例?
- c# - 如何检查列表的所有元素是否不同
- python - 有没有办法获得框架孩子的参考?
- python - Python - ReadProcessMemory - int 太长无法转换
- r - 在时间序列数据帧中添加作为重复数字的二进制指标的列的最有效方法是什么?
- mongodb - 如何根据 MongoDB 中的最大创建日期查询 id
- c++ - 如何对不在数组中的变量进行排序?
- html - 任何人都知道如何在 url 网站标题中插入带颜色的特殊字符?