I need to run a windows command line tool from a php script on my Debian server. For that, I'm trying Wine. Invoking wine and the tool via terminal works fine: "$ wine tool.exe"
But when running the same from my php script...
exec("wine tool.exe");
...I get the following in my Apache error log: wine: '/var/www' is not owned by you, refusing to create a configuration directory there
I guess this is a simple fundamental linux user rights problem... Should I change the user rights for Wine to www-data? How?
You should create a separate home directory for running Wine. Create a directory which is owned by www-data, set the HOME variable, su www-data, and run winecfg once; then run tool.exe (as that user). In the exec call, make sure that HOME is set (try exec("HOME=/tmp/wine wine tool.exe")
)
You're going to want to use chown to modify the ownership of wine and tool.exe.
Be advised that this could potentially open up some security concerns.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With