From 194723a43befb33e6142e34f15b8054fb350ef12 Mon Sep 17 00:00:00 2001 From: Jamie Cameron Date: Sun, 1 May 2011 21:59:29 -0700 Subject: [PATCH] Move webserver options to new page --- blue-theme/webmin/images/web.gif | Bin 0 -> 3638 bytes webmin/CHANGELOG | 1 + webmin/change_advanced.cgi | 16 ---------- webmin/change_web.cgi | 49 +++++++++++++++++++++++++++++++ webmin/edit_advanced.cgi | 19 ------------ webmin/edit_web.cgi | 41 ++++++++++++++++++++++++++ webmin/images/web.gif | Bin 0 -> 524 bytes webmin/index.cgi | 6 ++-- webmin/lang/en | 13 ++++++-- 9 files changed, 105 insertions(+), 40 deletions(-) create mode 100644 blue-theme/webmin/images/web.gif create mode 100755 webmin/change_web.cgi create mode 100755 webmin/edit_web.cgi create mode 100644 webmin/images/web.gif diff --git a/blue-theme/webmin/images/web.gif b/blue-theme/webmin/images/web.gif new file mode 100644 index 0000000000000000000000000000000000000000..279202e30cb25df2316e08608c4a493e287503fa GIT binary patch literal 3638 zcmW+(dpy(o|Nrdv8JW3-EtgHY9$~DbWbCt$(rrhQqKp_hPAEE5$2Jp^a;a}FxvaZH zsm@7CHn!Ylr{q$?+@lL}8{0m=o!|TMc)wqd_doCF>-BuU-p}{zb&}3GJyNF_<^zY$IkQA%F49-({GtXK2>vM( zr@S{cHMREiO#5gXP~)=3^7hS}Wx*Y-O&cd-#^wVZ=DRAtSJ)}w(ft~HQkc~+f4y~)voYXk_deqZtfRb6d!5D zuPCSR^;!bJN)ny;ofgcBV?^#(he*>rTJ?P7K~mDKbxyCUdp|FG&^PVpP#IHB`?@el--fLUm6 z%ioH%$t0%H5;}Agah9n+9%aT#0Nk4ou)a;BxHE#8JWe&AcKxFdT_JJFLk}AEQgu7Zr$X7NXWwwnL}O+=<=g?gSh!e$Afo_59Xn zFfP;u#*XP_A4ie7xlc5Yf$O4~t_>Mkwewce-$W520kCz6ML?md%H}!IO zi%!h%*i1J1-6|+$0+>6GI2&v$t^Jc5)Qi*2P#{Y6knE&LXg;HV;7(JixShok)eTt7 zZ!omFH#@316i0dmso^T(fwF0Qg=#Q3IP>{&wp0nuC2iB?pjOe%yzc<9o`|d0Or^0f zFNh8^f`+v=nDQbp0uL@8HJ0~YL~zuStQOJ48p9mKx{c=K8`|D!h$jRpzhZ?g-vSN* zsjTvZ$+z_6h4JsTnEy05W$VuO!b>9EEYv-`fe(mbJM7$e8#9}}hIz(Hs%OjlcMUrH zSQH~X1R=OBR3w%xqhrQ7WFu7R2XrZ7?VH~r=Puq1ojVanuxQg`np`ptbC9BN`MtQO ztG?n8qTv!u>#4_&6@hVkOU5x8FP8oNF9$qrc?`T534KV1S`70n%pF&F z&mzY+^!>>6N;UEQ+B^e=vzeN+s4$T&E20{;)=ZGQidjrx_FDzW zG`bB$fT}{NBX+C_z=a!`;@%-4tSTtU+lLLEHxBzk6rjv_R}3)|amY=drcT*!qx@^-sC{8F@{%=+MGU!o+$mq3tnlM~d%!pIwvpQ*8`>9uNVSm_Z~!CuZX}2tBAaw0XoWZ!w)XaMx&!amXw?XWb$Aj>uEOj z?9NrWH1528D)NM@54g6r7&p@}|D@#cYKe_LK=OpLUH5V%H~zTHB$+>{qOL@0 z*)aXa*KdCO1Zo>edFl>*j{VJHN369O-hIEH&0bBH9YuFP)%d@TTORv-s8~e;HOQVj z3~~k6xipIiktox&p;gy(tyr*x+)#?yv^|d(9jiIc^VpQ>*#hQzbQ3J@O3U}-a1R6Q zzxFJq+{AUqo@)h&_v9JDHd@&!&K3r=E#3nbhTdzi4u z_*Tei%}hX+)MMtUqP7T4R>A=4?DiWujENyENMwb6>7=Gw!cZGuMrZ0Mx6eoqg{3P2 z4RUxKu=X^66Y|~_Cliic!HX$`Z+1fHK-U0kU`&>@d6A1}1F;9_iANqlpLp`D+N2bQ zQhW~l@dGC8bGa~lQ5e<+`bNO6GvrhiRu}4+0Z#4Vy5bt+Q4#-|qvktpTsZCI`AH{K zCC#LwN`g4y6-9B~=3dN|E%7c~G?dOA4fKgn5rDN7g&P zfQ!r%QW~eKRW0QPb=a~eL}K4-c?0=j(;KV0nf(z>osY4CCDlM0Mjg^WSSeLb3fqMY zk8wdUeMGJ5L+ms8xqy zt23YmH(t`u?bfk%oKfn({{i1Jy611tNq}Kg#4_b*^`i1ao>u>U*Gv1#o~ZK$<@ml% zqdbMA#N;|J_=-{|$s{jB1 literal 0 HcmV?d00001 diff --git a/webmin/CHANGELOG b/webmin/CHANGELOG index 778c2cfff..0e99965b5 100644 --- a/webmin/CHANGELOG +++ b/webmin/CHANGELOG @@ -105,3 +105,4 @@ Strong PCI-compliant ciphers can now be selected on the SSL Encryption page. Added the Sending Email page which controls how Webmin itself sends messages. ---- Changes since 1.550 ---- Added fields to the Index Page Options page to control the display of Webmin and module updates. +Moved settings related to Webmin's built-in webserver to the new Web Server Options page. diff --git a/webmin/change_advanced.cgi b/webmin/change_advanced.cgi index 1b06860e9..a5dab9fcc 100755 --- a/webmin/change_advanced.cgi +++ b/webmin/change_advanced.cgi @@ -36,12 +36,6 @@ for($i=0; defined($tmod = $in{'tmod_'.$i}); $i++) { } &save_tempdirs(\%gconfig, \@tdirs); -# Save stack trace option -$gconfig{'error_stack'} = $in{'stack'}; - -# Save showing of stderr -$miniserv{'noshowstderr'} = !$in{'showstderr'}; - # Save umask if ($in{'umask_def'}) { delete($gconfig{'umask'}); @@ -97,16 +91,6 @@ else { $miniserv{'precache'} = $in{'precache'}; } -# Save password pass option -$miniserv{'pass_password'} = $in{'pass'}; - -# Save gzip option -if ($in{'gzip'} == 1) { - eval "use Compress::Zlib"; - $@ && &error(&text('advanced_egzip', 'Compress::Zlib')); - } -$miniserv{'gzip'} = $in{'gzip'}; - &lock_file($ENV{'MINISERV_CONFIG'}); &put_miniserv_config(\%miniserv); &unlock_file($ENV{'MINISERV_CONFIG'}); diff --git a/webmin/change_web.cgi b/webmin/change_web.cgi new file mode 100755 index 000000000..12886dbf8 --- /dev/null +++ b/webmin/change_web.cgi @@ -0,0 +1,49 @@ +#!/usr/local/bin/perl +# Save webserver options + +require './webmin-lib.pl'; +&ReadParse(); +&error_setup($text{'web_err'}); +&get_miniserv_config(\%miniserv); + +# Save expires +if ($in{'expires_def'}) { + delete($miniserv{'expires'}); + } +else { + $in{'expires'} =~ /^\d+$/ || + &error($text{'web_eexpires'}); + $miniserv{'expires'} = $in{'expires'}; + } + +# Save stack trace option +$gconfig{'error_stack'} = $in{'stack'}; + +# Save showing of stderr +$miniserv{'noshowstderr'} = !$in{'showstderr'}; + +if (!$miniserv{'session'}) { + # Save password pass option + $miniserv{'pass_password'} = $in{'pass'}; + } + +# Save gzip option +if ($in{'gzip'} == 1) { + eval "use Compress::Zlib"; + $@ && &error(&text('advanced_egzip', 'Compress::Zlib')); + } +$miniserv{'gzip'} = $in{'gzip'}; + +# Save global config +&lock_file("$config_directory/config"); +&write_file("$config_directory/config", \%gconfig); +&unlock_file("$config_directory/config"); + +# Save miniserv config +&lock_file($ENV{'MINISERV_CONFIG'}); +&put_miniserv_config(\%miniserv); +&unlock_file($ENV{'MINISERV_CONFIG'}); + +&show_restart_page(); +&webmin_log("web"); + diff --git a/webmin/edit_advanced.cgi b/webmin/edit_advanced.cgi index f1b8966cc..3f13a6cf3 100755 --- a/webmin/edit_advanced.cgi +++ b/webmin/edit_advanced.cgi @@ -63,18 +63,6 @@ print &ui_table_row($text{'advanced_precache'}, &ui_textbox("precache", $mode == 2 ? $miniserv{'precache'} : "", 40)) ] ])); -# Show call stack on error -print &ui_table_row($text{'advanced_stack'}, - &ui_yesno_radio("stack", int($gconfig{'error_stack'}))); - -# Show CGI errors -print &ui_table_row($text{'advanced_showstderr'}, - &ui_yesno_radio("showstderr", int(!$miniserv{'noshowstderr'}))); - -# Pass passwords to CGI programs -print &ui_table_row($text{'advanced_pass'}, - &ui_yesno_radio("pass", int($miniserv{'pass_password'}))); - # Umask for created files print &ui_table_row($text{'advanced_umask'}, &ui_opt_textbox("umask", $gconfig{'umask'}, 5, $text{'default'})); @@ -110,13 +98,6 @@ if (&foreign_check("proc")) { } } -# Gzip static files? -print &ui_table_row($text{'advanced_gzip'}, - &ui_radio("gzip", $miniserv{'gzip'}, - [ [ '', $text{'advanced_gzipauto'} ], - [ 0, $text{'advanced_gzip0'} ], - [ 1, $text{'advanced_gzip1'} ] ])); - print &ui_table_end(); print &ui_form_end([ [ "save", $text{'save'} ] ]); diff --git a/webmin/edit_web.cgi b/webmin/edit_web.cgi new file mode 100755 index 000000000..686fdc21f --- /dev/null +++ b/webmin/edit_web.cgi @@ -0,0 +1,41 @@ +#!/usr/local/bin/perl +# Show the web serving options form + +require './webmin-lib.pl'; +&ui_print_header(undef, $text{'web_title'}, ""); +&get_miniserv_config(\%miniserv); + +print &ui_form_start("change_web.cgi", "post"); +print &ui_table_start($text{'web_header'}, undef, 2); + +# Default content expiry time +print &ui_table_row($text{'web_expires'}, + &ui_opt_textbox("expires", $miniserv{'expires'}, 10, + $text{'web_expiresdef'}, $text{'web_expiressecs'})); + +# Show call stack on error +print &ui_table_row($text{'advanced_stack'}, + &ui_yesno_radio("stack", int($gconfig{'error_stack'}))); + +# Show CGI errors +print &ui_table_row($text{'advanced_showstderr'}, + &ui_yesno_radio("showstderr", int(!$miniserv{'noshowstderr'}))); + +if (!$miniserv{'session'}) { + # Pass passwords to CGI programs + print &ui_table_row($text{'advanced_pass'}, + &ui_yesno_radio("pass", int($miniserv{'pass_password'}))); + } + +# Gzip static files? +print &ui_table_row($text{'advanced_gzip'}, + &ui_radio("gzip", $miniserv{'gzip'}, + [ [ '', $text{'advanced_gzipauto'} ], + [ 0, $text{'advanced_gzip0'} ], + [ 1, $text{'advanced_gzip1'} ] ])); + +print &ui_table_end(); +print &ui_form_end([ [ "save", $text{'save'} ] ]); + +&ui_print_footer("", $text{'index_return'}); + diff --git a/webmin/images/web.gif b/webmin/images/web.gif new file mode 100644 index 0000000000000000000000000000000000000000..b5d640d72fa1d655105e13dc1e18380e0c4832e7 GIT binary patch literal 524 zcmZ?wbhEHbG+;1bXklRZ|NsBerArkhB=+t-*3!}v6&1w*6l6#~ckWy=P?BMeA;bSU zAcn+$CyD%TxEG&JKpi{IB+0cS%Be?VxXCh1jnhT*$FFz_}XV|F_lo@ zXlrp=cz4yFj@HJ57A9wOjyndXn#&c0E-v)Aa#x^IgP)fti#v(8u}O`uNHCO}t6Hc> zO-O*NEwOW&nm}s_cMfa*JY~jWLC(d=%j|?VDs2>25oVq_i>)JXtMV3x0|z(lKeBJL zn()%%_D;TS`!A>-KX~Z`g8*Cd#L4TgT)p`4(Sz$O)w3tD3W!{PeC7U=BTpE3xj1JJ*zjR_%_Btb%HRYppISFmFtDopZa@_$`M{$-9Y9R&^iL-d@cmV)43+ yMSic_uPzIR1r4prO^h)c5)L%A>h7?apfe literal 0 HcmV?d00001 diff --git a/webmin/index.cgi b/webmin/index.cgi index 85dd1c1c3..829bac531 100755 --- a/webmin/index.cgi +++ b/webmin/index.cgi @@ -20,7 +20,7 @@ my (@wlinks, @wtitles, @wicons); "edit_categories.cgi", "edit_descs.cgi", "edit_themes.cgi", "edit_referers.cgi", "edit_anon.cgi", "edit_lock.cgi", "edit_mobile.cgi", "edit_blocked.cgi", "edit_status.cgi", - "edit_advanced.cgi", "edit_debug.cgi" ); + "edit_advanced.cgi", "edit_debug.cgi", "edit_web.cgi", ); @wtitles = ( $text{'access_title'}, $text{'bind_title'}, $text{'log_title'}, $text{'proxy_title'}, $text{'ui_title'}, $text{'mods_title'}, @@ -32,7 +32,7 @@ my (@wlinks, @wtitles, @wicons); $text{'anon_title'}, $text{'lock_title'}, $text{'mobile_title'}, $text{'blocked_title'}, $text{'status_title'}, $text{'advanced_title'}, - $text{'debug_title'}, ); + $text{'debug_title'}, $text{'web_title'}, ); @wicons = ( "images/access.gif", "images/bind.gif", "images/log.gif", "images/proxy.gif", "images/ui.gif", "images/mods.gif", "images/os.gif", "images/lang.gif", "images/startpage.gif", @@ -41,7 +41,7 @@ my (@wlinks, @wtitles, @wicons); "images/descs.gif", "images/themes.gif", "images/referers.gif", "images/anon.gif", "images/lock.gif", "images/mobile.gif", "images/blocked.gif", "images/status.gif", - "images/advanced.gif", "images/debug.gif" ); + "images/advanced.gif", "images/debug.gif", "images/web.gif", ); if ($gconfig{'eazel'}) { push(@wlinks, "edit_syslet.cgi"); push(@wtitles, $text{'syslet_title'}); diff --git a/webmin/lang/en b/webmin/lang/en index 5685cbe77..ffa03c2e7 100644 --- a/webmin/lang/en +++ b/webmin/lang/en @@ -617,6 +617,7 @@ log_theme_def=Changed theme to Webmin default log_referers=Changed trusted referrers log_descs=Changed module titles log_advanced=Changed advanced options +log_web=Changed web server options log_osdnclear=Cleared download cache log_savekey=Uploaded existing SSL key log_deletecache=Deleted $1 URLs from cache @@ -798,9 +799,9 @@ advanced_pri=Priority level advanced_sclass=IO class for scheduled jobs advanced_sprio=IO priority for scheduled jobs advanced_gzip=Gzip compress static files? -advanced_gzipauto=Only pre-compressed .gz file exists +advanced_gzipauto=Only if pre-compressed .gz file exists advanced_gzip0=Never -advanced_gzip1=Use pre-compressed file or compress dynamically +advanced_gzip1=Use pre-compressed file and compress dynamically advanced_egzip=Gzip compression cannot be enabled unless the $1 perl module is installed syslog_errorlog=Webmin error log @@ -929,4 +930,12 @@ sendmail_esmtp=Missing or un-resolvable SMTP server hostname sendmail_elogin=Missing SMTP server login sendmail_efrom=Missing or incorrectly formatted from address +web_title=Web Server Options +web_header=Options for Webmin's built-in webserver +web_expires=Client-side cache time for static files +web_expiresdef=Webmin default (7 days) +web_expiressecs=Time in seconds +web_err=Failed to save web server options +web_eexpires=Missing or non-numeric client size cache time + __norefs=1