Așa că încerc să văd dacă pot seta antete de răspuns configurându-le în Apache.
Folosesc testarea Debian, în cazul în care contează.
Serverul meu web funcționează și l-am folosit pentru mai multe site-uri web pe care le dezvolt. Deci acum tot ce vreau să fac este să setez un antet pentru a vedea dacă funcționează.
Aceasta este ceea ce am schimbat în apache.conf
<Directory /home/web>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
Header set myHeader "Hello Header World"
</Directory>
Așa arată fișierul de configurare pe care îl găzduiesc în /etc/apache2/sites-available/000-default.conf:
<VirtualHost *:80>
# Directiva ServerName stabilește schema de solicitare, numele gazdă și portul
# serverul îl folosește pentru a se identifica. Acesta este folosit la creare
# adrese URL de redirecționare. În contextul gazdelor virtuale, ServerName
# specifică ce nume de gazdă trebuie să apară în antetul Gazdă: către solicitări
# potriviți această gazdă virtuală. Pentru gazda virtuală implicită (acest fișier) aceasta
# valoarea nu este decisivă deoarece este folosită ca gazdă de ultimă instanță, indiferent.
# Cu toate acestea, trebuie să îl setați pentru orice altă gazdă virtuală în mod explicit.
#ServerName www.example.com
ServerAdmin webmaster@localhost
DocumentRoot /home/web
AliasMatch ^/vmapi/(.*)$ /home/web/vmapi/api_receiver.php
AliasMatch ^/inherentvalue/api/(.*)$ /home/web/inherentvalue/api/api.php
# Niveluri de jurnal disponibile: trace8, ..., trace1, debug, info, notice, warn,
# eroare, critică, alertă, emerg.
# Este, de asemenea, posibil să configurați nivelul de jurnal pentru un anumit
# module, de ex.
#LogLevel info ssl:warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combinat
Locația setată antet „juancito”
Setul antet Locație „pedrito”
Setarea antetului MyHeader „Bună ziua Joe. A fost nevoie de %D microsecunde pentru ca Apache să răspundă la această solicitare.”
# Pentru majoritatea fișierelor de configurare din conf-available/, care sunt
# activat sau dezactivat la nivel global, este posibil să
# includeți o linie doar pentru o anumită gazdă virtuală. De exemplu, cel
# următoarea linie activează configurația CGI numai pentru această gazdă
# după ce a fost dezactivat global cu „a2disconf”.
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
Aliasul este acolo pentru un alt proiect, la care lucrez.
De asemenea, rezultatul lui apache2ctl -M arată astfel:
Module încărcate:
core_module (static)
so_module (static)
watchdog_module (static)
http_module (static)
log_config_module (static)
logio_module (static)
version_module (static)
unixd_module (static)
access_compat_module (partajat)
alias_module (partajat)
auth_basic_module (partajat)
authn_core_module (partajat)
authn_file_module (partajat)
authz_core_module (partajat)
authz_host_module (partajat)
authz_user_module (partajat)
autoindex_module (partajat)
deflate_module (partajat)
dir_module (partajat)
env_module (partajat)
filter_module (partajat)
headers_module (partajat) <-- Este activat.
mime_module (partajat)
mpm_prefork_module (partajat)
negotiation_module (partajat)
php_module (partajat)
reqtimeout_module (partajat)
rewrite_module (partajat)
setenvif_module (partajat)
status_module (partajat)
Deci, încerc următoarea comandă:
curl -i -s -k -v -X GET „http://localhost/vmportal/css”
Iar rezultatul este acesta:
HTTP/1.1 301 mutat permanent
Data: miercuri, 24 noiembrie 2021 06:32:01 GMT
Server: Apache/2.4.48 (Debian)
Locație: http://localhost/vmportal/css/
Lungimea conținutului: 313
Tip de conținut: text/html; set de caractere=iso-8859-1
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 mutat permanent</title>
</head><body>
<h1>Mutat permanent</h1>
<p>Documentul a fost mutat <a href="http://localhost/vmportal/css/">aici</a>.</p>
<hr>
<adresă>Server Apache/2.4.48 (Debian) la portul localhost 80</adresă>
</body></html>
Nu ar trebui să văd NICIUN din anteturile pe care le-am setat în răspuns?
Poate cineva să-mi spună ce aș putea să fac greșit? Sau care ar putea fi problema? Sau chiar cum să-l depanezi? (Nu există nimic în jurnalele de erori sau în jurnalele de acces, în cazul în care vă întrebați).