Puncte:0

Anteturile setate folosind modulele mod_headers în apache sunt complet ignorate

drapel th

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).

digijay avatar
drapel mx
Primiți un răspuns http 301, încercați din nou comanda `curl` astfel: `curl -I http://localhost/vmportal/css/`. De asemenea, redenumiți antetul în `X-myHeader`.
drapel th
Încercat. Literal, nimic nu s-a schimbat, cu excepția faptului că nu primesc rezultatul HTML pe konsole

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.