注:这个问题是关于我的服务器configuration给504超时 。 我在这里做了一个项目http://www.tryperl.com/ (需要授权与GitHublogin)。 请善良,我正在学习灯(埃尔) 我用了一个 微型实例(带有免费层)Amazon EC2服务器 亚马逊Linux,Perl。 我使用了舞者框架 CGIconfiguration来承载它。 我有一个虚拟主机conf在阿帕奇(具有网站启用文件夹和conf文件,我的网站坐落在/ srv / www/tryperl.com/TryPerlApp/) 如果你还没有猜到,这是一个基本的IDE,你可以用print命令编写一些基本的perl脚本并运行它并查看输出。 我正在使用Safe.pm模块。 问题: 通常需要永久加载 。 有一些JS文件,其中一半导致一个504.该网站刚刚加载一下子。 这是萤火虫看到的: 我是一个总的linux / apache新手在这里。 我究竟做错了什么? 我之前使用mod_perl的configurationperformance的更好,所以我确定它不是我的服务器。 这是CGIconfiguration吗? 我应该在前面使用nginx的静态文件? 我可以用我的configuration吗?
我有一个本地Apache2服务器(安装LAMP)。 Apache2目录是/etc/apache2 ,我的文档根目录是/var/www 。 在doc根目录下,有一个/cgi-bin目录,其中包含我的脚本cgi.py 使用./cgi.py执行所需的输出,但是当我将浏览器指向文件时,它会提供给我下载。 显然,这通常是由于访问问题 ,但是在向文件添加a+x权限后,问题仍然存在。 这是简单的脚本: #!/usr/bin/python3 # -*- coding: UTF-8 -*- #enable debugging import cgitb cgitb.enable() print("Content-Type: text/plain;charset=utf-8"); print() print("Hello World!"); 在apache2目录的httpd.conf我添加了以下内容(之前是空的): ScriptAlias /cgi-bin/ /var/www/cgi-bin/ <Directory /var/www/cgi-bin/> Options ExecCGI AddHandler cgi-script .cgi .py </Directory> 脚本不能执行的原因是什么? 编辑:菜鸟的错误,我没有重新启动服务器后, httpd.conf变化。 这样做后,脚本执行。 感谢Jenny D提出的build议。
当他访问我的内部网页时,我需要检索当前login的Windows用户的用户名。 我正尝试在Windows Server 2008上使用SSPI(mod_auth_sspi.so)和Apache 2.2来validation我的网页。 我已经对httpd.conf文件进行了以下更改,并将我的Intranet站点添加到浏览器设置上的受信任站点。 我的网页是在Perl中,正在使用CGI.pm。 我尝试通过$ cgi-> user_name()和$ cgi-> remote_user()检索用户名,并检查REMOTE_USER和AUTH_USER cgi ENVvariables以获取用户名。 <IfModule !mod_auth_sspi.c> LoadModule sspi_auth_module modules/mod_auth_sspi.so </IfModule> <Directory "C:/Program Files (x86)/Apache Software Foundation/Apache2.2/htdocs/TestWeb/"> <Files Test.pl> AuthName "TestWeb" AuthType SSPI SSPIAuth On SSPIAuthoritative On SSPIOfferBasic Off Require valid-user SSPIDomain domain name </Files> </Directory> 更改后我重新启动了Apache。 我没有看到cgi环境variables来获取环境variables中的用户标识符。 我已经search了同一个论坛和其他人,这就是他们已经完成的工作。 我错过了什么吗? 感谢任何帮助。 谢谢
我想要设置CGit和NGINX。 我差不多在那里,但是我的NGINX的conf文件中的重写规则有问题。 目前我有这个: server { listen 80; server_name cgit.mydomain.com; index cgit.cgi; gzip off; root /usr/share/webapps/cgit; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root/cgit.cgi; location / { try_files $uri @cgit; } location @cgit { auth_basic "Restricted"; auth_basic_user_file /path/to/my/password_file; gzip off; rewrite ^/([^/]+/.*)?$ /cgit.cgi?url=$1 break; fastcgi_pass fcgiwrap; } } 我知道,当我在看demo_repo_1.git的URL应该看起来像http://cgit.mydomain.com/cgit.cgi?url=gitolite-admin.git (或类似的东西?),而是它看起来像http://cgit.mydomain.com/cgit.cgi/gitolite-admin.git/ ,它不起作用(因为在cgit.cgi脚本不能从URL读取正确的数据,并不能显示正确的关于我的回购信息。 此外,如果我强制我认为它应该(在我的浏览器中复制并粘贴“正确”的URL)的URL,下载cgit.cgi脚本。 我可以帮助一下这个重写规则吗?
只是去检查我的网站之一,并被消息迎接:“CGIWrap错误:真正的UID不能改变!”。 通过SSH进来,并试图“PS X”这显示了吨只是“-f”和pathindex.php或一些其他的PHP文件的过程吨。 杀死所有进程后,一切恢复正常。 任何人都知道那是什么? Google根本没有帮助。
我在Python中创build了一个CGI,除非我尝试写入用户家中的文件,否则它将起作用。 我激活了allow_httpd_anon_write和allow_http_sys_script_anon_write为graphics工具来pipe理SELinux。 然后,我home , home/user和home/user /home/user/log_file.txt public_content_rw_t 。 据我所知,这是足够的,还有什么我必须做的? 写另一个职位更简单吗?
我们有一个在IIS上运行的Delphi编写的CGI页面服务器(.exe)。 我们希望能够在不久的将来在某些时候将PHPembedded到这些页面中 – 比如,对于validation码或CMS集成,但目前还不确定如何通过IIS来解决这个问题。 使用IIS,是否有一种方法可以在通过我们自己的CGI应用程序之前或之后通过PHP解释器“pipe道”一个页面?
通常,我想在http://mysite.com/和任何其他目录请求时提供index.html文件。 以下是在nginx.conf中为/test所做的: location /test { try_files $uri.html $uri/index.html /index.html =404; } 如果我想通过cgi(在thttpd上)从同一个位置提供文件,这也是可以的,提供一个cgi编程页面: location /test { proxy_pass http://127.0.0.1:8000; } 我遇到的问题是如何进入更深层次,比如/ test / page1。 如果page1.html存在,我想要的服务,但是,如果没有,我希望它去到thttpd服务器,并在那里运行的CGI程序。 configuration文件中的许多变化我试过给我一个redirect循环或找不到文件或从服务器错误。 其他时候,我可以得到它服务的CGI和HTML文件,但试图访问目录给出了一个循环。 下面也工作,部分,但我很努力尝试不同的变化,我已经迷失了自己。 location /test { proxy_pass http://127.0.0.1:8000/test; } 我确信只有一个简单的,基本的东西我错过了。
我有一个新的Debian安装(如果这不是一个矛盾),与Apache 2.2.x,我正在迁移到使用Ubuntu Saucy和Apache 2.4.x后,我拉我的头发为什么http:// JonathansCorner。 com / index.cgi (用于提供主页)提供了一个403.一个旧的,静态的http://jonathansCorner.com/index.html工作得很好,以及网站内的其他静态页面。 我记得要做的是添加mod_cgi: root@ps306627:/etc/apache2/mods-enabled# ls *cgi* cgi.load cgid.conf cgid.load proxy_scgi.load 经过一番search,我确认我需要ExecCGI和AddHandler指令: <Directory /home/cjsh/> Options +ExecCGI Indexes FollowSymLinks MultiViews AddHandler cgi-script .cgi AllowOverride None Order allow,deny allow from all </Directory> 我以为这可能是我没有明确表示一个index.cgi可以为DirectoryIndex服务,但我有: DirectoryIndex index.cgi index.html 此外, http://JonathansCorner.com/sidebar_index.cgi上的另一个CGI脚本的行为与主页完全相同,并给出403。 每当我想要testing的机会,我也重新启动服务器。 我检查了目录权限; 如果Apache进程无法访问静态内容,静态内容将不会被服务,我仔细检查并确认,当我从shell运行index.cgi作为nobody时,它会给出我想要的输出,而不需要Linux权限错误。 我还有什么可以让别人解释为什么我没有插入所有需要插入的东西来让index.cgi像shell一样从shell执行的方式工作? 这里是我的apache2.conf和000-default.conf(我删除了000-default;configuration文件是从Apache 2导入的)的串联。 仍然有点困惑什么是错的: # # Based upon the NCSA […]
PHP 5.5s OPcache是否可以在CGI模式下运行PHP? 或者,这甚至是有道理的,因为它为每个请求分叉和杀死PHP?