Hosting Operations
Read-only, can be slowFind Web Server Redirect Rules
Browsers report a redirect loop or HTTP/HTTPS behavior disagrees, and you need to find redirect rules before changing DNS or TLS.
Command
grep -RInE 'return[[:space:]]+30[18]|rewrite[[:space:]]|Redirect[[:space:]]|RewriteRule|RewriteCond' /etc/nginx /etc/apache2 2>/dev/null
Before you run this
System impact: Read-only. Can create load on large logs, directories, filesystems, or process tables.
When not to use it: Do not assume every rewrite causes a client-visible redirect. Inspect status codes, conditions, and the matching server block before editing.
Expected output
Config paths and redirect or rewrite lines, enough to identify which file needs careful review.
System impact
Read-only, can be slow. Nothing changes. The command searches config text for common redirect and rewrite directives.
May require elevated permissions on protected paths or service-owned files.
Scope this to the smallest useful path or service on busy systems.
Recovery / rollback: no state is changed.
When to use it
Use when browsers report too many redirects, HTTP redirects to the wrong place, or HTTPS redirects back to HTTP.
When not to use it
Do not assume every rewrite causes a client-visible redirect. Inspect status codes, conditions, and the matching server block before editing.
next steps
Related commands
Map Nginx Roots and Aliases
The URL was right. The filesystem path was not.
grep -RInE '^[[:space:]]*(root|alias)[[:space:]]' /etc/nginx/conf.d /etc/nginx/sites-enabled 2>/dev/null
List Nginx Listen Directives
The site was configured, but the port was not.
grep -RInE '^[[:space:]]*listen[[:space:]]' /etc/nginx/conf.d /etc/nginx/sites-enabled 2>/dev/null
Show Nginx Include Lines
The config was valid; it just was not included.
grep -RInE '^[[:space:]]*include[[:space:]]' /etc/nginx/nginx.conf /etc/nginx/conf.d /etc/nginx/sites-enabled 2>/dev/null
Find Apache Document Roots
Apache was serving files from a different directory than expected.
grep -RInE '^[[:space:]]*DocumentRoot[[:space:]]' /etc/apache2/sites-enabled 2>/dev/null
Map Apache Proxy Rules
Apache was up. The reverse proxy target was wrong.
grep -RInE '^[[:space:]]*(ProxyPass|ProxyPassReverse)[[:space:]]' /etc/apache2/sites-enabled 2>/dev/null
Study mapping
Use this as independent command practice: read the notes, predict the output, then compare it with the example before using a real shell.
Independent study support only. No affiliation, endorsement, exam dumps, or real exam questions.