私はUbuntu Linuxマシンで開発したCGIコードをC言語で書いています。それは正常に動作しますが、私はいくつかの変更を加え、旅行中にそれを更新したいと思っていました。 XcodeとSafariを使ってMacノートパソコン(macOS 10.12.1)でテストするように設定しました。 ApacheがCGIコードを認識していくつかのサイトを見つけられるようにする方法についてオンラインで調べてみましたが、それでも動作しません。ここでMacOSでのCGIコードのテストSierra
は、私がこれまで持っているものです。
私はフォームをCGIコードを呼び出すHTMLページを格納するディレクトリ/ユーザー/ユーザー名/サイトを設定します。 (「ユーザ名」は私のユーザー名です)
は私が(注:私はまた、念のために/ユーザ/ユーザ名/サイトに置く)/ライブラリ/ WebServer/CGI-実行可能ファイルにコンパイルされたCGIコードを入れ
また、オンラインの指示に従って、私は、ユーザー名と呼ばれるの/ etc/apache2の/ユーザーで次のファイルを作成し
:
は、オンラインの指示に従い、/etc/apache2/httpd.confに私は次の行をコメント解除しました.conf(ここでも "username"は私のユーザ名です)。私は(また、コンピュータの完全な再起動を試みたが、それは助けにはならなかった)、Apacheサーバを再起動する上記の変更を行って
<Directory "/Users/username/Sites/"> AllowOverride All Options Indexes MultiViews FollowSymLinks Require all granted </Directory>
。
LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
LoadModule userdir_module libexec/apache2/mod_userdir.so
AddHandler cgi-script .cgi
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
Include /private/etc/apache2/extra/httpd-userdir.conf
Include /private/etc/apache2/extra/httpd-vhosts.conf
私はhttp://localhost/~username/foo.htmlを使用して、フォームのページをロードすることができるよ、私はコードにPOSTメソッドを使用してフォームを送信するときfoo.cgiそれはちょうど私に戻ってfoo.cgiを吐くし、その後サファリはそれをダンプダウンロードフォルダ。また、単純なperlスクリプトと単純なCGIコードを書くだけで "hello world"のWebページを作成し、http://localhost/~username/hello.pl(または.cgi)と呼んでいます。これは私には同じ結果をもたらしましたが、perlスクリプトの場合、それは単純なテキストなのでスクリプト自体を吐き出しました。
私は行方不明ですが、それを見つけることができませんでした。どんな助けでも大歓迎です。ありがとう!私はオンラインを見つけた命令のうち、左
DC