[Megoldva] Apache: disztribúció kijelzés

Fórumok

Azt szeretném kérdezni, hogy hogyan lehet azt megoldani, hogy ne ez legyen a Server Signature: Apache/2.2.8 (Unix), hanem ez: Apache/2.2.8 (Ubuntu) ?
Magyarul jelezze ki az apache, hogy milyen linux disztribúción fut. Tudom, hogy ha csomagból telepítem, akkor kijelzi, de én fordítani szeretném forrásból, de így meg nem jelzi ki.

Hozzászólások

vi src/include/httpd.h
change SERVER_VERSION

ASK Me No Questions, I'll Tell You No Lies

Kerestem én mielőtt kérdeztem, de (bár nem néztem át az összes fájlt egyenként) sehol nem találtam, hogy a "Unix" szót hol tudnám átírni.

Egyébként az ap_release.h-ban sem találok olyat, ahol át tudom írni. Az ap_release fájl tartalma:
/* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

/**
* @file ap_release.h
* @brief Version Release defines
*/

#ifndef AP_RELEASE_H
#define AP_RELEASE_H

#include "apr_general.h" /* stringify */

#define AP_SERVER_COPYRIGHT \
"Copyright 2008 The Apache Software Foundation."

/*
* The below defines the base string of the Server: header. Additional
* tokens can be added via the ap_add_version_component() API call.
*
* The tokens are listed in order of their significance for identifying the
* application.
*
* "Product tokens should be short and to the point -- use of them for
* advertizing or other non-essential information is explicitly forbidden."
*
* Example: "Apache/1.1.0 MrWidget/0.1-alpha"
*/
#define AP_SERVER_BASEVENDOR "Apache Software Foundation"
#define AP_SERVER_BASEPROJECT "Apache HTTP Server"
#define AP_SERVER_BASEPRODUCT "Apache"

#define AP_SERVER_MAJORVERSION_NUMBER 2
#define AP_SERVER_MINORVERSION_NUMBER 2
#define AP_SERVER_PATCHLEVEL_NUMBER 8
#define AP_SERVER_DEVBUILD_BOOLEAN 0

#if AP_SERVER_DEVBUILD_BOOLEAN
#define AP_SERVER_ADD_STRING "-dev"
#else
#define AP_SERVER_ADD_STRING ""
#endif

/* keep old macros as well */
#define AP_SERVER_MAJORVERSION APR_STRINGIFY(AP_SERVER_MAJORVERSION_NUMBER)
#define AP_SERVER_MINORVERSION APR_STRINGIFY(AP_SERVER_MINORVERSION_NUMBER)
#define AP_SERVER_PATCHLEVEL APR_STRINGIFY(AP_SERVER_PATCHLEVEL_NUMBER) \
AP_SERVER_ADD_STRING

#define AP_SERVER_MINORREVISION AP_SERVER_MAJORVERSION "." AP_SERVER_MINORVERSION
#define AP_SERVER_BASEREVISION AP_SERVER_MINORREVISION "." AP_SERVER_PATCHLEVEL
#define AP_SERVER_BASEVERSION AP_SERVER_BASEPRODUCT "/" AP_SERVER_BASEREVISION
#define AP_SERVER_VERSION AP_SERVER_BASEVERSION

/* macro for Win32 .rc files using numeric csv representation */
#define AP_SERVER_PATCHLEVEL_CSV AP_SERVER_MAJORVERSION_NUMBER ##, \
##AP_SERVER_MINORVERSION_NUMBER ##, \
##AP_SERVER_PATCHLEVEL_NUMBER

#endif

sed 's,(" PLATFORM "),("Ubuntu"),' server/core.c > server/core.c

sed 's,(" PLATFORM "),("Ubuntu"),' server/core.c > core.c && mv core.c server/core.c

szerk: maskull http://archive.ubuntu.com/ubuntu/pool/main/a/apache2/apache2_2.2.4-3ubu…

BUILD_DIST="($(lsb_release -i -s))"
# This is where we get our distribution-specific server signature from:
sed -i -e "s/(\" PLATFORM \")/${BUILD_DIST}/" server/core.c

Ha ezt lefuttatom: sed -i -e "s/(\" PLATFORM \")/${BUILD_DIST}/" server/core.c akkor nem történik semmi. Telepítés után ugyanúgy ezt látom: Apache/2.2.8 (Unix) mod_ssl/2.2.8 OpenSSL/0.9.8e

Szerk.: Mégis történik valami. Mégpedig eltűnik a (Unix) rész. De én nem azt akarom, hogy eltűnjön, hanem hogy a zárójelben az Ubuntu-t lehessen olvasni.

httpd.conf-ban nem jok ezek?
ServerSignature, es ServerTokens atallitasa.