diff options
Diffstat (limited to 'tools/nginx.html')
-rw-r--r-- | tools/nginx.html | 125 |
1 files changed, 86 insertions, 39 deletions
diff --git a/tools/nginx.html b/tools/nginx.html index 9fd38b9..0ded2b6 100644 --- a/tools/nginx.html +++ b/tools/nginx.html @@ -88,6 +88,25 @@ $ </pre> + <p>Having password is a good idea, but requires it every + time nginx is restarted. To remove;</p> + + <pre> + $ sudo cp /etc/ssl/keys/nginx.key /etc/ssl/keys/nginx.key.pass + $ sudo openssl rsa -in /etc/ssl/keys/nginx.key.pass -out /etc/ssl/keys/nginx.key + </pre> + + <pre> + Enter pass phrase for /etc/ssl/keys/nginx.key.pass: + writing RSA key + </pre> + + <pre> + $ sudo chown nginx /etc/ssl/keys/nginx.key* + $ sudo chmod 0600 /etc/ssl/keys/nginx.key* + # chmod 644 /etc/ssl/certs/exim.cert + </pre> + <p>Sign SSL cetificate;</p> <pre> @@ -96,23 +115,17 @@ -signkey /etc/ssl/keys/nginx.key \ -out /etc/ssl/certs/nginx.crt </pre> + Signature ok subject=/C=PT/ST=Some-State/O=Internet Widgits Pty Ltd/CN=core.privat-network.net Getting Private key Enter pass phrase for /etc/ssl/keys/nginx.key: </pre> - <p>Having password is a good idea, but requires it every - time nginx is restarted. To remove;</p> - - <pre> - $ sudo cp /etc/ssl/keys/nginx.key /etc/ssl/keys/nginx.key.pass - $ sudo openssl rsa -in /etc/ssl/keys/nginx.key.pass -out /etc/ssl/keys/nginx.key - </pre> - <pre> - Enter pass phrase for /etc/ssl/keys/nginx.key.org: - writing RSA key + $ sudo chown nginx:nginx /etc/ssl/keys/nginx.key* + $ sudo chmod 0600 /etc/ssl/keys/nginx.key* + $ sudo chmod 644 /etc/ssl/certs/nginx.cert </pre> <h2 id="nginxconf">3. Nginx Configuration</h2> @@ -137,7 +150,7 @@ 1024 </pre> - <p>Example of http block with ssl configured;</p> + <p>Example of http block with ssl configured;</p> <pre> # @@ -215,16 +228,18 @@ <h2 id="server">4. Server with PHP</h2> + <p>To debug configurations check logs and;</p> - <p>Check <a href="conf/etc/nginx/sites/">/etc/nginx/sites</a> - for more examples.</p> + <pre> + nginx -V + </pre> <h3>4.1. Setup PHP</h3> <p> Install php and setup php.ini as development mode;</p> <pre> - $ prt-get depinst php php-fpm php-gd + $ sudo prt-get depinst php php-fpm php-gd php-pdo-pgsql php-postgresql </pre> <p>Setup php ini in development mode;<p/> @@ -244,51 +259,83 @@ <h3>4.2. Setup Virtual Host</h3> - <p>Server (virtual host) with Laravel, - <a href="conf/etc/nginx/sites/laravel.conf">/etc/nginx/sites/laravel.conf</a>;</p> + <p>Server (virtual host) with pmwiki and flyspray, check + <a href="conf/etc/nginx/sites/">/etc/nginx/sites</a> + for more examples. Install pmwiki and flyspray;</p> + + <pre> + $ sudo prt-get depinst pmwiki flyspray + </pre> + + <p> This server is configured in a way that + root serves pmwiki and /tasks serves flyspray. In order to + flyspray to link correctly change index is needed;</p> <pre> server { listen 443 ssl; - listen [::]:443 ssl; + # listen [::]:443 ssl; - root /srv/www/atom/public; - server_name core.privat-network.net; - index index.html index.htm index.php; + server_name c9.core; - charset utf-8; + root /srv/www/default; - location / { - try_files $uri $uri/ /index.php$is_args$args; + location /distfiles { + alias /usr/ports/distfiles; } - location = /favicon.ico { access_log off; log_not_found off; } - location = /robots.txt { access_log off; log_not_found off; } - - access_log off; - error_log /var/log/nginx/core.privat-network.net-error.log error; - sendfile off; + location /tasks { + index index.php; + alias /srv/www/default/flyspray; + try_files $uri $uri/ index.php$is_args$args; + } - client_max_body_size 100m; + location ~ ^/tasks(.+\.php)$ { + alias /srv/www/default/flyspray; - location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; - fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; - include fastcgi_params; - fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; - fastcgi_intercept_errors off; - fastcgi_buffer_size 16k; - fastcgi_buffers 4 16k; + try_files $uri /index.php =404; + include /etc/nginx/fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$1; + # fastcgi_pass unix:/var/run/php5-fpm.sock; + fastcgi_pass 127.0.0.1:9000; + } + + location / { + alias /srv/www/default/pmwiki/; + index pmwiki.php + try_files $uri $uri/ /pmwiki.php$is_args$args; } - location ~ /\.ht { - deny all; + location ~ \.php$ { + alias /srv/www/default/pmwiki; + fastcgi_split_path_info ^(.+\.php)(/.+)$; + fastcgi_index pmwiki.php; + try_files $uri /pmwiki.php =404; + include /etc/nginx/fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + # fastcgi_pass unix:/var/run/php5-fpm.sock; + fastcgi_pass 127.0.0.1:9000; } } </pre> + <p>Change /srv/www/default/flyspray/index.php to;</p> + + <pre> + <?php + /* + This is the main script that everything else is included + in. Mostly what it does is check the user permissions + to see what they have access to. + */ + define('IN_FS', true); + $_SERVER['SCRIPT_NAME'] = "/bug/index.php"; + require_once(dirname(__FILE__).'/header.php'); + </pre> + <h2 id="userdir">5. User Directory</h2> <p><a href="http://wiki.nginx.org/UserDir">Nginx Wiki UserDir</a></p> |