Jump to content

AutoIt CGI Handler: AuCGI


wraithdu
 Share

Recommended Posts

  • Moderators

Seems that $_GET_raw and _Get() aren't working for me on server 2008.

If I use EnvGet("QUERY_STRING") directly in the body of the au3 scripting block tags, I do get a value however.

Edit:

I need to say that I found I was using "POST" here instead of "GET", however, what threw me off was it was working for a while with straight EnvGet("QUERY_STRING"). $_POST_raw seems to be getting me my data, I'll just create the functions I need specifically to deal with my different situation(s).

Edited by SmOke_N

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

Link to comment
Share on other sites

  • Replies 76
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

  • Moderators

So... you do or don't have a problem, or something is or isn't broken? I'm a little lost after your edit there.

You need to be specific when you ask if I have a problem :blink: . It was a premature post on my part for the issue. The problem was corrected by what I said in my edit.

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

Link to comment
Share on other sites

  • 1 month later...

BTW, I haven't heard back from RulerOf in quite some time, so I'm going to post my update for hopeful IIS (maybe other servers?) compatibility soon.

Aye aye, I kinda fell off the wagon on this project when other things came up and never revisited it ;)

However, at the moment I find myself sorely in need of AutoIt on IIS right now (Because to hell with PHP! :)) for a Win7 deployment I'm doing, so I'm going to be setting this up again and I'll give you my notes =)

Apologies, but also many thanks!

Link to comment
Share on other sites

  • 3 weeks later...

Anyone tried this with Apache?

I got it sort of working, ive got it "executing" and whatnot, but anything output'd is plaintext. eg; <b>test</b> shows up as "<b>test</b>", not bolded text.

Edited by AzKay
# MY LOVE FOR YOU... IS LIKE A TRUCK- #
Link to comment
Share on other sites

  • 1 month later...

I just set this up, but unfortunatly it seems that the _POST function doesnt seem to be working. Evan the example doesn't seem to be working. Heres my mess around code that shows the issue.

Everything works fine until I try to get the POST response. If anybody has the solution I'd appreciate a quick reply as I'm in the middle of development.

<?au3
ConsoleWrite("Content-Type: text/html")
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
<title>AuCGI Test</title>
</head>
<body>
Test 1 2 3
<form action="test.web" method="POST"><button name="go" value="go">GO!</button>
<button>Reset</button>
<br /><br />
<?au3
    $var = 0
    If $var = 0 then
        msgbox(0, "", _POST("go"))
        ConsoleWrite("nexilius <br />")
        $var = 1
    EndIf
       If _POST("go") Then

               For $i = 1 to 10
                       ConsoleWrite($i & "<br />" & @CRLF)
                       sleep(1500)
               Next
               ConsoleWrite("<br /><br />DONE!")
       EndIf
?>
</body></html>

Edit: Uninstalled the server and reinstalled and still no luck. =[

Edit2: Did some more digging and apparently the _getPOSTData function is timing out. Is windows 7 perhaps the issue? I wish I had an XP box to test this on :/

Edited by BillLuvsU

[center][/center]Working on the next big thing.Currently Playing: Halo 4, League of LegendsXBL GT: iRememberYhslaw

Link to comment
Share on other sites

  • Moderators

Unsure what that is supposed to do when you're calling "Test.web" from your form post.

What do you have in "Test.web"?

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

Link to comment
Share on other sites

Thankyou for the quick reply Smoke ;).

Test.web is the filename of that file. I'm not sure its purpose to be honost, but maybe i didn't clarify enough in my last post. The code I posted above is the example code with some debugging lines I included.

Perhaps it is my non-existant knowledge in web design past dreamweaver thats causing the problem. Could you perhaps post a quick example of the barebones method to retrieving a POST value?

[center][/center]Working on the next big thing.Currently Playing: Halo 4, League of LegendsXBL GT: iRememberYhslaw

Link to comment
Share on other sites

  • Moderators

You know, JRowe and I were using this in a very extensive project at one time.

I went back through the code we were utilizing, we had no need for forms because everything was back-end, but I seriously do not see one place where we used _Post other than the initialization from the the main console au3.

With that said, that server is currently down for me to test in, and I won't have it up for at least a few hours. Maybe someone that has experienced your issue would be better to address to your concern.

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

Link to comment
Share on other sites

You can access POSTed data directly, using the global $_POST_raw .

To see if anything is actually getting POSTed, just do an echo on $_POST_raw, and then either write your own handler for POSTed data, or figure out what's breaking down between the _Post and the processing.

Link to comment
Share on other sites

Your example works fine for me Win7 x64 with LightTPD and Firefox. I've made a few small changes for your ease of use:

<?au3
#NoTrayIcon
_standardHeader()
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
<title>AuCGI Test</title>
</head>
<body>
Test 1 2 3
<form action="<?au3 inline($_SCRIPT_NAME) ?>" method="POST"><button name="go" value="go">GO!</button>
<button>Reset</button>
<br /><br />
<?au3
    $var = 0
    If $var = 0 then
        echol("_POST('go') = " & _POST("go"))
        echol("nexilius")
        $var = 1
    EndIf
    If _POST("go") = "go" Then

            For $i = 1 to 10
                    echol($i)
                    sleep(500)
            Next
            inline("<br /><br />DONE!")
    EndIf
?>
</body></html>
Link to comment
Share on other sites

Hmm how strange.

I woke up today with the mindset of beating my problem into a bloody pulp. Unfortunatly it seems to have fixed itself. Both the wraithdus example and my own work fine now.

@JRowe

Yes, I saw $_POST_raw and attempted to use that as you said, however the post data was never evan getting to that point. I'm starting to suspect some software incompatibility being the cause, but as long as its working I suppose. Thanks for all your help guys.

[center][/center]Working on the next big thing.Currently Playing: Halo 4, League of LegendsXBL GT: iRememberYhslaw

Link to comment
Share on other sites

  • 4 weeks later...

How about FastCGI ? Did someone made something ?

I've tried aucgi and it's slow ( as all cgi )

i've started to develope a FCGI server, tell me if I can post here or not.

It's really, really fast but it needs some improvements and i'm lazy ...

-- Arck System _ Soon -- Ideas make everything

"La critique est facile, l'art est difficile"

Projects :

[list] [*]Au3Service : Run your exe as service V3 / Updated 29/07/2013 Get it Here [/list]
Link to comment
Share on other sites

  • 5 months later...

Define 'alive'. The project is not under active development, as it implements all that I'm interested in at the moment, and doesn't have any bugs that I know of. I don't run the autoit.me site, so I can't speak to its status.

Link to comment
Share on other sites

wraithdu, I hate to come back after so long and post to say that I found a bug, but I found a bug, which might be why we're having trouble doing apache installs of this...

For just test-bed purposes I use Xitami webserver, any-whos, it doesn't produce the end slash (/ (which I believe is standard for webservers)) that I see so many Windows based webservers add for some reason. This is causing the last character of the DOCUMENT_ROOT to be dropped when it should be kept. Basically, without the fix, on Xitami at least (possibly more servers like Apache), it produces invalid filenames, rendering the page useless with just the standard error printout "There is no spoon."

I had to make my own debug output to find this out... *sigh*

if StringRight(StringReplace(EnvGet("DOCUMENT_ROOT"),"/","\"),1) <> "\" Then
        local $sourcescript = StringReplace(EnvGet("DOCUMENT_ROOT") & EnvGet("SCRIPT_NAME"), "/", "\")
    Else
        local $sourcescript = StringReplace(StringTrimRight(EnvGet("DOCUMENT_ROOT"), 1) & EnvGet("SCRIPT_NAME"), "/", "\")
    EndIf

This is my official contribution to the AuCGI project, and hopefully this fix should increase compatibility across multiple webservers, so please include it in the next update. We'll call it the "spoon-fix".

Edited by Cynagen

Blah, blah, blah... lip service... lip service.Working on a number of projects right now, just waiting for my time to post them here on AutoIt forums.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...