对于学校项目,我可以选择任何我喜欢的框架来创建一个相当简单的网站。我选择了Mojolicious因为我喜欢Perl。
我还要求在三个网络服务器中挑选:Nginx,Apache或Lighttpd。我过去曾使用Apache进行PHP学校项目。
我对Mojolicious完全迷失了。我理解它的方式我完全不能使用任何这些网络服务器,因为我有Morbo / Hypnotoad?我仍然必须使用网络服务器,因为它是规则之一,因此配置起来更简单,并且在考虑Mojolicious时效率最高?
感谢您的帮助,
答案 0 :(得分:2)
我使用apache作为hypnotoad的代理。工作正常,因为这样我可以使用hypnotoad来进行hotdeploy更改。
我在apache sites-available
中的配置是:
<VirtualHost *:8080>
ServerAdmin webmaster@example.com
ServerName myhost.example.com
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
ProxyRequests Off
ProxyPreserveHost On
ProxyPass / http://localhost:3233/ keepalive=On
ProxyPassReverse / http://localhost:3233/
RequestHeader set X-Forwarded-Proto "http"
ErrorLog /var/log/apache2/error.log
# debug, info, notice, warn, error, crit, alert, emerg
LogLevel warn
CustomLog /var/log/apache2/access.log combined
</VirtualHost>
您可能还会发现此链接很有用:
答案 1 :(得分:1)
更新
我重新阅读了你的问题,并在大约10分钟内用mojolicous :: lite构建了一个快速的lighttpd。 跟着几个快速指南。
如果你构建一个简单的mojolicious :: lite,例如:
#!/usr/bin/env perl
use Mojolicious::Lite;
# Documentation browser under "/perldoc"
plugin 'PODRenderer';
get '/' => sub {
my $c = shift;
$c->render('index');
};
app->start;
__DATA__
@@ index.html.ep
% layout 'default';
% title 'Welcome';
Welcome to the Mojolicious real-time web framework!
@@ layouts/default.html.ep
<!DOCTYPE html>
<html>
<head><title><%= title %></title></head>
<body><%= content %></body>
</html>
然后构建一个指向您的精简应用程序的conf文件。
#test
#
server.modules = (
"mod_fastcgi",
"mod_cgi",
)
server.document-root = "/var/www/html/"
server.port = 8080
mimetype.assign = (
".html" => "text/html",
".txt" => "text/plain",
".jpg" => "image/jpeg",
".png" => "image/png"
)
#------------------------
#for host sub in IP address
#"port" does not seem to work so use server.port
$HTTP["host"] == "xxx.xxx.xxx.xxx" {
fastcgi.server = ("/" => ((
"bin-path" => "/opt/web-interface/l_myapp/l_myapp.pl fastcgi",
"check-local" => "disable",
"fix-root-scriptname" => "enable",
"port" => 3000))
)
}
在命令行: lighttpd -D -f lighttpd.conf
这可以在尝试通过网页“ip address”后在命令行:8080
希望这会有所帮助。
答案 2 :(得分:0)
与上面类似但你可以在nginx反向代理后面运行hypnotoad: