首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Apache上执行Julia;设置APPDATA和Home环境变量

在Apache上执行Julia;设置APPDATA和Home环境变量
EN

Stack Overflow用户
提问于 2017-04-16 07:06:21
回答 1查看 200关注 0票数 1

我试图在Apache上的浏览器中执行Julia代码(我在Windows 10上使用Ampps )。我能够执行它真正的命令提示符,或者通过python代码调用它(参见下面的python代码)。当我试图在浏览器上直接执行朱莉娅代码时,我得到了网关超时,服务器没有及时响应消息。但是,当我试图执行调用Julia代码的python代码时,我在Apache的错误日志中获得了更详细的信息:

代码语言:javascript
复制
fatal: error thrown and no exception handler available.:C:/Program Files
(x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

rec_backtrace at /home/Administrator/buildbot/slave/package_win6_2-x64/build
/src/home/Administrator/buildbot/slave/package_win6_2-x64/build/src\\stackwalk.c:84:
C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer:
http://localhost/csvToLayer_JSAPI/

record_backtrace at /home/Administrator/buildbot/slave/package_win6_2-x64/build/src/home
/Administrator/buildbot/slave/package_win6_2-x64/build/src\\task.c:233:
C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py,
referer: http://localhost/csvToLayer_JSAPI/

jl_throw at /home/Administrator/buildbot/slave/package_win6_2-x64/build/src/home/Administrator/buildbot/slave/package_win6_2-x64/build/src\\task.c:551:
C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

access_env at .\\env.jl:14: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py,referer:
http://localhost/csvToLayer_JSAPI/

homedir at .\\path.jl:41: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer:
http://localhost/csvToLayer_JSAPI/

_pkgroot at .\\pkg\\dir.jl:10 [inlined]: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py,
referer: http://localhost/csvToLayer_JSAPI/

__init__ at .\\pkg\\pkg.jl:74: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py,
referer: http://localhost/csvToLayer_JSAPI/

unknown function (ip: 0000000061D151DE): C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py,
referer: http://localhost/csvToLayer_JSAPI/

jl_call_method_internal at /home/Administrator/buildbot/slave
/package_win6_2-x64/build/src/home/Administrator/buildbot/slave/package_win6_2-x64/build/src\\julia_internal.h:210 [inlined]:
C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

jl_apply_generic at /home/Administrator/buildbot/slave/package_win6_2-x64/build/src/home/Administrator/buildbot/slave/package_win6_2-x64/build/src\\gf.c:1950: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

jl_apply at /home/Administrator/buildbot/slave/package_win6_2-x64/build/src/home/Administrator/buildbot/slave/package_win6_2-x64/build/src\\julia.h:1392 [inlined]:
C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py,
referer: http://localhost/csvToLayer_JSAPI/

jl_module_run_initializer at /home/Administrator/buildbot/slave/package_win6_2-x64/build/src/home/Administrator/buildbot/slave/package_win6_2-x64/build/src\\toplevel.c:83: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

_julia_init at /home/Administrator/buildbot/slave/package_win6_2-x64/build/src/home/Administrator/buildbot/slave/package_win6_2-x64/build/src\\init.c:742:
C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer:
http://localhost/csvToLayer_JSAPI/

julia_init at /home/Administrator/buildbot/slave/package_win6_2-x64/build/src/home/Administrator/buildbot/slave/package_win6_2-x64/build/src\\task.c:284: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

wmain at /home/Administrator/buildbot/slave/package_win6_2-x64/build/ui\\repl.c:242: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

__tmainCRTStartup at /usr/src/debug/mingw64-x86_64-runtime-4.0.6-1/crt\\crtexe.c:329: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

mainCRTStartup at /usr/src/debug/mingw64-x86_64-runtime-4.0.6-1/crt\\crtexe.c:212: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

BaseThreadInitThunk at C:\\WINDOWS\\System32\\KERNEL32.DLL (unknown line): C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/
RtlUserThreadStart at C:\\WINDOWS\\SYSTEM32\\ntdll.dll (unknown line): C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

Base.InitError(mod=:Pkg, error=Base.KeyError(key="HOMEDRIVE")): C:/Program Files (x86)/
Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

Traceback (most recent call last):\r: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/
File "C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py", line 20, in
<module>\r: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer:
http://localhost/csvToLayer_JSAPI/

x = subprocess.check_output(cmd)\r: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer:
http://localhost/csvToLayer_JSAPI/
File "C:\\Python27\\ArcGIS10.3\\lib\\subprocess.py", line 573, in check_output\r: 
C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

raise CalledProcessError(retcode, cmd, output=output)\r: C:/Program Files (x86)/
Ampps/www/csvToLayer_JSAPI/python.py, referer: http://localhost/csvToLayer_JSAPI/

subprocess.CalledProcessError: Command '['C:/Users/Reza/AppData/Local/Julia-0.5.1/bin/julia.exe',
'C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/HT.jl']' returned non-zero exit status
-1073741510\r: C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/python.py,
referer: http://localhost/csvToLayer_JSAPI/

这似乎是一个与在Julia中如何设置APPDATA env变量有关的已知问题。这里,建议在httpd.conf或httpd-vhosts.conf中设置HOMEDRIVE、HOMEPATH和APPDATA的env变量。我试着同时编辑httpd-vhosts.conf和httpd.conf,但仍然得到了相同的错误。

我是这样编辑httpd.conf的:

代码语言:javascript
复制
#### Localhost VirtualHost ####

<VirtualHost 127.0.0.1:80>
<Directory "{$path}/www">
    Options Indexes FollowSymLinks ExecCGI
    AddHandler cgi-script .cgi .py .jl
    AllowOverride All
    Order deny,allow
    allow from All
</Directory>
SetEnv HOMEDRIVE "C:"
SetEnv HOMEPATH "/Users/Reza"
SetEnv APPDATA "C:/Users/Reza/AppData/Roaming"
ScriptLog logs/julia_cgi.log
ServerName localhost
ServerAlias localhost 127.0.0.1
ScriptAlias /cgi-bin/ "{$path}/www/cgi-bin/"
DocumentRoot "{$path}/www"
ErrorLog "{$path}/apache/logs/error.log"
CustomLog "{$path}/apache/logs/access.log" combined
</VirtualHost>

这是调用Julia代码的python代码:

代码语言:javascript
复制
#!"C:/Python27/ArcGIS10.3/python.exe"

import subprocess

print "Content-Type: text/html\n\n"
print "hi there! this is python!"

command="C:/Users/Reza/AppData/Local/Julia-0.5.1/bin/julia.exe"
path2script="C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/HT.jl"
cmd = [command, path2script]

x = subprocess.check_output(cmd)

print x

这是朱莉娅密码

代码语言:javascript
复制
#!"C:/Users/Reza/AppData/Local/Julia-0.5.1/bin/julia.exe"
redirect_stderr(STDOUT)
println("Content-Type: text/html\n\n")
println("hi there; this is Julia!");
println("Julia is passing outputs to Python");

我是否为APPDATA env变量设置了wroge位置?我应该为APPDATA使用哪个文件夹?除了“C:/Users/Reza/AppDate/漫游”之外,我还尝试了"C:/Users/Reza/AppDate/Local“和"C:/Users/Reza/AppDate/Local/Julia-0.5.1",并且得到了相同的错误。

EN

回答 1

Stack Overflow用户

发布于 2017-04-16 17:41:07

我不知道为什么SetEnv在httpd.conf中不工作,但我找到了一个解决办法。我用Python设置了环境变量:

代码语言:javascript
复制
#!"C:/Python27/ArcGIS10.3/python.exe"
import subprocess,os

print "Content-Type: text/html\n\n"
print "hi there! this is python!"

os.environ["HOMEDRIVE"]="C:"
os.environ["HOMEPATH"]="/Users/Reza"
os.environ["APPDATA"]="C:/Users/Reza/AppData/Roaming"

command="C:/Users/Reza/AppData/Local/Julia-0.5.1/bin/julia.exe"
path2script="C:/Program Files (x86)/Ampps/www/csvToLayer_JSAPI/HT.jl"
cmd = [command, path2script]

try:
    print subprocess.check_output(cmd)
except subprocess.CalledProcessError as e:
    print e.output
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43434683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档