Openbsd
nginx:目錄列表中的長文件名
將 nginx/1.4.1 與 OpenBSD 5.4、64 位一起使用:
使用目錄列表時,我們如何設置 nginx 以顯示完整的文件名(或者至少從文件名中顯示更多而不是預設值)?
Google搜尋只給了我這個:
http://forum.nginx.org/read.php?2,124400,167420#msg-167420 January 18, 2011 08:36PM fagtron I looked all over the net and wasn't able to find this answer anyway, so I looked into the nginx source files and it's very easy. Simply modify the file located at [b]src/http/modules/ngx_http_autoindex_module.c[/b] and then compile. Change these lines: [b]#define NGX_HTTP_AUTOINDEX_PREALLOCATE 50 #define NGX_HTTP_AUTOINDEX_NAME_LEN 50[/b] to whatever you want, such as: [b]#define NGX_HTTP_AUTOINDEX_PREALLOCATE 100 #define NGX_HTTP_AUTOINDEX_NAME_LEN 100[/b] And then compile and restart nginx. That's it !!!
問題:沒有其他方法可以重新編譯它嗎?
根據ngx_http_autoindex_module文件,自動索引頁面的列寬配置不可用。從原始碼編譯將是進行此更改的唯一方法。
一種替代方法是使用腳本語言(例如
php
、ruby
或python
)為您執行目錄列表。好處包括:
- 通過 CSS、JavaScript 等完全可定制
- 精細控製文件列表
注意事項:
- 需要CGI例如
php-fpm
或passenger
- 需要更多配置
您可以嘗試使用 fancyindex 模組及其 fancyindex_name_length 參數來配置文件名長度。