|
@@ -289,85 +289,8 @@ function install_dokuwiki {
|
289
|
289
|
set_completion_param "dokuwiki domain" "${DOKUWIKI_DOMAIN_NAME}"
|
290
|
290
|
|
291
|
291
|
if [[ $ONION_ONLY == "no" ]]; then
|
292
|
|
- echo 'server {' > /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
293
|
|
- echo ' listen 80;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
294
|
|
- echo " root /var/www/$DOKUWIKI_DOMAIN_NAME/htdocs;" >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
295
|
|
- echo " server_name $DOKUWIKI_DOMAIN_NAME;" >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
296
|
|
- echo ' access_log off;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
297
|
|
- echo " error_log /var/log/nginx/${DOKUWIKI_DOMAIN_NAME}_error.log $WEBSERVER_LOG_LEVEL;" >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
298
|
|
- echo ' index index.php;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
299
|
|
- echo ' charset utf-8;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
300
|
|
- echo ' proxy_read_timeout 86400s;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
301
|
|
- echo '' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
302
|
|
- function_check nginx_disable_sniffing
|
303
|
|
- nginx_disable_sniffing $DOKUWIKI_DOMAIN_NAME
|
304
|
|
- echo ' # rewrite to front controller as default rule' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
305
|
|
- echo ' location / {' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
306
|
|
- function_check nginx_limits
|
307
|
|
- nginx_limits $DOKUWIKI_DOMAIN_NAME
|
308
|
|
- echo ' rewrite ^/(.*) /index.php?q=$uri&$args last;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
309
|
|
- echo ' }' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
310
|
|
- echo '' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
311
|
|
- echo " # make sure webfinger and other well known services aren't blocked" >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
312
|
|
- echo ' # by denying dot files and rewrite request to the front controller' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
313
|
|
- echo ' location ^~ /.well-known/ {' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
314
|
|
- echo ' allow all;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
315
|
|
- echo ' }' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
316
|
|
- echo '' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
317
|
|
- echo ' # statically serve these file types when possible' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
318
|
|
- echo ' # otherwise fall back to front controller' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
319
|
|
- echo ' # allow browser to cache them' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
320
|
|
- echo ' # added .htm for advanced source code editor library' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
321
|
|
- echo ' location ~* \.(jpg|jpeg|gif|png|ico|css|js|htm|html|ttf|woff|svg)$ {' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
322
|
|
- echo ' expires 30d;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
323
|
|
- echo ' try_files $uri /index.php?q=$uri&$args;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
324
|
|
- echo ' }' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
325
|
|
- echo '' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
326
|
|
- echo ' # block these file types' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
327
|
|
- echo ' location ~* \.(tpl|md|tgz|log|out)$ {' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
328
|
|
- echo ' deny all;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
329
|
|
- echo ' }' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
330
|
|
- echo '' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
331
|
|
- echo ' # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
332
|
|
- echo ' # or a unix socket' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
333
|
|
- echo ' location ~* \.php$ {' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
334
|
|
- function_check nginx_limits
|
335
|
|
- nginx_limits $DOKUWIKI_DOMAIN_NAME
|
336
|
|
- echo ' # Zero-day exploit defense.' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
337
|
|
- echo ' # http://forum.nginx.org/read.php?2,88845,page=3' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
338
|
|
- echo " # Won't work properly (404 error) if the file is not stored on this" >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
339
|
|
- echo " # server, which is entirely possible with php-fpm/php-fcgi." >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
340
|
|
- echo " # Comment the 'try_files' line out if you set up php-fpm/php-fcgi on" >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
341
|
|
- echo " # another machine. And then cross your fingers that you won't get hacked." >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
342
|
|
- echo ' try_files $uri $uri/ /index.php;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
343
|
|
- echo ' # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
344
|
|
- echo ' fastcgi_split_path_info ^(.+\.php)(/.+)$;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
345
|
|
- echo ' # With php5-cgi alone:' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
346
|
|
- echo ' # fastcgi_pass 127.0.0.1:9000;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
347
|
|
- echo ' # With php5-fpm:' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
348
|
|
- echo ' fastcgi_pass unix:/var/run/php5-fpm.sock;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
349
|
|
- echo ' include fastcgi_params;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
350
|
|
- echo ' fastcgi_index index.php;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
351
|
|
- echo ' fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
352
|
|
- echo ' }' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
353
|
|
- echo '' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
354
|
|
- echo ' # deny access to all dot files' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
355
|
|
- echo ' location ~ /\. {' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
356
|
|
- echo ' deny all;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
357
|
|
- echo ' }' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
358
|
|
- echo '' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
359
|
|
- echo ' #deny access to store' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
360
|
|
- echo ' location ~ /store {' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
361
|
|
- echo ' deny all;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
362
|
|
- echo ' }' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
363
|
|
- echo ' location ~ /(data|conf|bin|inc)/ {' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
364
|
|
- echo ' deny all;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
365
|
|
- echo ' }' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
366
|
|
- echo ' location ~ /\.ht {' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
367
|
|
- echo ' deny all;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
368
|
|
- echo ' }' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
369
|
|
- echo '}' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
370
|
|
- echo '' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
|
292
|
+ function_check nginx_http_redirect
|
|
293
|
+ nginx_http_redirect $DOKUWIKI_DOMAIN_NAME
|
371
|
294
|
echo 'server {' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
372
|
295
|
echo ' listen 443 ssl;' >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|
373
|
296
|
echo " root /var/www/$DOKUWIKI_DOMAIN_NAME/htdocs;" >> /etc/nginx/sites-available/$DOKUWIKI_DOMAIN_NAME
|