Commit Graph

461 Commits

Author SHA1 Message Date
Cursor Agent
36ef12843e fix: add WebDAV methods (PROPFIND, PROPPATCH, MKCOL, etc.) to ValidHTTPMethods
The structured access logs were showing an empty method field for PROPFIND
requests because the parser only recognized standard HTTP methods.

Changes:
- Add WebDAV methods (RFC 4918) to ValidHTTPMethods in parser/types.go:
  PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, UNLOCK
- Update the validMethods check in indexer/parallel_indexer_optimized.go
- Add test cases for WebDAV methods in parser_test.go

Fixes: PROPFIND method not showing in structured access logs

Co-authored-by: Jacky <me@jackyu.cn>
2026-02-06 15:22:12 +00:00
Jacky
bfc1b21457 fix(docker): explicitly negotiate API version to ensure compatibility (#1543)
The Docker client SDK v28.5.2 defaults to API version 1.51, which may not
be supported by older Docker daemon versions. Although WithAPIVersionNegotiation()
is used, the manual Ping() call in initClient() does not trigger the automatic
version negotiation flow.

This fix explicitly calls NegotiateAPIVersionPing() with the ping response
to ensure the client uses a compatible API version with the Docker daemon.
This resolves the '404 Not Found for API route and version' error when
controlling Nginx in another Docker container.

Fixes #1543

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2026-02-06 22:45:08 +08:00
0xJacky
cb1fb691af refactor: improve provider selection logic in DNSChallenge component and update column definition in ACMEUser view 2025-12-09 17:35:47 +08:00
0xJacky
bc5351092a feat(site): enhance site scanning to support include directives and improve listen directive handling
Close #1378, #1463
2025-12-09 11:49:41 +08:00
0xJacky
de9783005d fix: improve error handling and path resolution in license generation 2025-12-09 11:08:43 +08:00
0xJacky
f00f1228a8 chore: update cloudflare-go 2025-12-08 10:32:16 +00:00
0xJacky
a2e873cf71 chore: go mod tidy 2025-12-08 17:57:20 +08:00
Jacky
9225c96250 feat/dns (#1466)
* feat: dns management

* refactor(dns): streamline domain management functions and enhance validation

* feat(dns): add value suggestions for DNS record input with autocomplete functionality

* fix(dns): handle edge case in record listing pagination

* fix(dns): update credential property name for consistency and add cleanup on component unmount

* feat(dns): implement DDNS management #1194, #1140
2025-12-08 17:45:30 +08:00
0xJacky
f520a4459a fix(nginx): handle symlinked entries in sandbox configuration copying 2025-12-08 02:34:28 +00:00
0xJacky
06e52aa972 debug(sitecheck): exploration #1463 2025-12-07 11:22:46 +00:00
0xJacky
ba8a5c4a99 chore: prepare v2.2.2 2025-12-07 11:41:27 +08:00
0xJacky
f59720426b fix(proxy): remove internal identifiers from upstream requests #1463 2025-12-07 11:04:54 +08:00
0xJacky
79344395f5 feat(nginx_log): implement true incremental indexing for log files 2025-12-04 15:04:27 +08:00
0xJacky
43dba4ce07 feat(nginx_log): enhance incremental indexing configuration and logic 2025-12-04 12:51:28 +08:00
0xJacky
e96490cbb9 test: add unit test for clamping logic in incremental indexing 2025-11-29 10:07:19 +00:00
Jacky
d4fa5a5943 Refactor: Improve incremental log indexing logic (#1460)
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2025-11-29 11:37:23 +08:00
0xJacky
3876098820 feat: implement favicon download functionality with content type validation 2025-11-28 15:51:40 +08:00
0xJacky
31acae5c31 enhance(nginx_log): integration tests and logging capabilities 2025-11-28 03:57:31 +00:00
0xJacky
9ac65b24bc refactor: streamline frontend asset handling and remove compression step 2025-11-28 11:47:37 +08:00
0xJacky
dddb86724c fix: site navigation sorting 2025-11-28 02:59:59 +00:00
0xJacky
d92371224c fix: deal locking in SandboxTestConfigWithPaths 2025-11-26 14:02:11 +08:00
Jacky
748b09f78e Refactor: Avoid network requests when health check is disabled (#1447)
This change ensures that when a site's health check is disabled, the checker returns cached metadata without making any network requests, as per issue #1446. A new helper function `getExistingSiteSnapshot` is introduced to retrieve this cached information. A new test case `TestCheckSiteSkipsNetworkWhenDisabled` is added to verify this behavior.

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2025-11-25 19:28:59 +08:00
0xJacky
fdea3940d8 chore: prepare version v2.2.1 2025-11-25 13:56:10 +08:00
enwikuna
918642f41c Refactor nginx path resolution with improved regex and fallback (#1414)
* Refactor nginx path resolution with improved regex and fallback

Updated regex patterns for extracting nginx configuration paths and added fallback mechanisms for determining paths on different operating systems. Improved error handling and logging for better debugging.

* enhance: nginx path parsing and add tests #1412, #1414

---------

Co-authored-by: 0xJacky <me@jackyu.cn>
2025-11-25 13:30:54 +08:00
0xJacky
98e83f13b5 refactor: replace mutex with RWMutex for NodeMap access and implement snapshot functionality #1444 2025-11-24 14:10:23 +00:00
0xJacky
aee2352eb5 enhance: improve sandbox configuration handling and include directive processing #1430 2025-11-24 08:13:59 +00:00
0xJacky
aec291d21e chore: update dependencies and improve component styles 2025-11-24 11:31:48 +08:00
0xJacky
d6cdf476a9 enhance: streamline sandbox configuration and include handling #1421 2025-11-11 02:02:40 +00:00
0xJacky
c4bd485c4f enhance: upstream parser for variables #1402 2025-11-10 09:35:10 +00:00
0xJacky
bc0844ae8b enhance: config restore with mount point handling #1419 2025-11-10 16:19:47 +08:00
0xJacky
9a625075f2 enhance(config-list): content filter #1413 2025-11-09 10:04:27 +00:00
0xJacky
cfb6cae78a refactor: add config to disable site health check #1427, #1415, #1413 2025-11-09 09:41:33 +00:00
0xJacky
d24d845816 refactor: improved WebSocket handling 2025-11-09 11:06:34 +08:00
0xJacky
3111adfb44 chore: update deps 2025-11-07 18:23:23 +08:00
0xJacky
55ee3797d8 refactor(notification): rename DingTalk to Dingding and update related references #1392 2025-10-17 23:24:14 +08:00
Alireza Gholiei
a6e16911cc fix(template): use path.Join and rename param to avoid Windows embed path issue (#1391) 2025-10-16 08:50:28 +08:00
Alireza Gholiei
9eb759d567 fix: support Windows in execShell by replacing /bin/sh with cmd.exe (#1389)
Co-authored-by: Alireza Gholie <alireza.gholie@gmail.com>
2025-10-12 11:57:27 +08:00
0xJacky
2457658297 fix(backup): allow all paths when the allowed path is the root directory in ValidatePathAccess function #1380 2025-10-08 10:25:19 +08:00
LogicDX342
dc522dea6d fix: refine regex patterns for server directives (#1384)
Updated regular expressions to handle optional whitespace and comments.
2025-10-08 09:55:35 +08:00
0xJacky
49623c21c9 feat(scanner): enhance scanning functionality with configurable options and post-scan callbacks 2025-10-06 23:30:21 +00:00
0xJacky
ae86ef7a0c fix(upstream): improve caching mechanism for disabled sockets and ensure cache validity 2025-10-05 16:09:42 +00:00
0xJacky
3930aaf690 fix(cert): add ACMEUserID to the autoCert function #1372 2025-10-05 15:26:35 +00:00
0xJacky
6de168c945 refactor(upstream): remove init function and implement caching for disabled sockets in service 2025-10-05 00:56:31 +00:00
0xJacky
5b47ccf639 feat(geolite): add GeoLite2 database checks and download functionality in self-check tasks 2025-10-04 15:47:40 +00:00
0xJacky
f967501412 feat(geolite): implement GeoLite2 database download from cloud 2025-10-04 13:23:33 +00:00
0xJacky
29b83da8cb fix(restore): skipping symlinks outside allowed paths during restore #1371 2025-10-04 15:24:10 +08:00
0xJacky
e71293cd76 feat: add deploy_mode field to namespace and implement sandbox testing for nginx config #1350 2025-10-04 04:51:23 +00:00
0xJacky
de0467b9e7 feat: allow disabling proxy targets availability test #1327 2025-10-03 13:51:12 +00:00
0xJacky
ccedb94880 chore: clean up codes 2025-10-03 14:33:07 +08:00
0xJacky
eb4dc12a2a fix(nginx_log): initialize global log parser singleton in modern_services 2025-10-01 11:19:35 +00:00