- Updated package name in Cargo.toml: nginx-test → sqlite-serve - Updated library name: libnginx_test.dylib → libsqlite_serve.dylib - Updated all load_module directives in nginx configs - Updated build checks in start scripts - Updated branding in footer template - Updated project name in all README files The name 'sqlite-serve' better reflects the module's purpose: serving dynamic content from SQLite databases via NGINX.
59 lines
1.8 KiB
Plaintext
59 lines
1.8 KiB
Plaintext
# Book Detail Configuration
|
|
# Demonstrates using path parameters with the SQLite module
|
|
|
|
load_module target/debug/libsqlite_serve.dylib;
|
|
|
|
worker_processes 1;
|
|
events {}
|
|
|
|
error_log logs/error.log debug;
|
|
|
|
http {
|
|
# Global templates for shared components
|
|
sqlite_global_templates "server_root/global_templates";
|
|
|
|
server {
|
|
listen 8081;
|
|
|
|
root "server_root";
|
|
|
|
# Book detail page using a path parameter (numbered capture)
|
|
# Captures the book ID from the URL and passes it to the SQL query
|
|
location = /book {
|
|
add_header "Content-Type" "text/html; charset=utf-8";
|
|
sqlite_db "book_catalog.db";
|
|
sqlite_query "SELECT * FROM books WHERE id = ?";
|
|
sqlite_param $arg_id;
|
|
sqlite_template "detail.hbs";
|
|
}
|
|
|
|
# Books by genre using query parameter
|
|
location = /genre {
|
|
add_header "Content-Type" "text/html; charset=utf-8";
|
|
sqlite_db "book_catalog.db";
|
|
sqlite_query "SELECT * FROM books WHERE genre = ? ORDER BY rating DESC";
|
|
sqlite_param $arg_genre;
|
|
sqlite_template "genre.hbs";
|
|
}
|
|
|
|
# Search by year range using query parameters
|
|
location = /years {
|
|
add_header "Content-Type" "text/html; charset=utf-8";
|
|
sqlite_db "book_catalog.db";
|
|
sqlite_query "SELECT * FROM books WHERE year >= ? AND year <= ? ORDER BY year DESC, title";
|
|
sqlite_param $arg_min;
|
|
sqlite_param $arg_max;
|
|
sqlite_template "list.hbs";
|
|
}
|
|
|
|
# Fallback to all books
|
|
location / {
|
|
add_header "Content-Type" "text/html; charset=utf-8";
|
|
sqlite_db "book_catalog.db";
|
|
sqlite_query "SELECT * FROM books ORDER BY rating DESC, title";
|
|
sqlite_template "list.hbs";
|
|
}
|
|
}
|
|
}
|
|
|