google: NGINX-Modul zur Erstellung von Google-Spiegeln
Installation
Sie können dieses Modul in jeder RHEL-basierten Distribution installieren, einschließlich, aber nicht beschränkt auf:
- RedHat Enterprise Linux 7, 8, 9 und 10
- CentOS 7, 8, 9
- AlmaLinux 8, 9
- Rocky Linux 8, 9
- Amazon Linux 2 und Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-google
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install nginx-module-google
Aktivieren Sie das Modul, indem Sie Folgendes an den Anfang von /etc/nginx/nginx.conf hinzufügen:
load_module modules/ngx_http_google_filter_module.so;
Dieses Dokument beschreibt nginx-module-google v0.2.4, veröffentlicht am 17. Juni 2023.
Beschreibung
ngx_http_google_filter_module ist ein Filtermodul, das die Bereitstellung von Google-Spiegeln erheblich erleichtert.
Reguläre Ausdrücke, URI-Standorte und andere komplexe Konfigurationen sind bereits integriert.
Das native NGINX-Modul gewährleistet die Effizienz beim Umgang mit Cookies, gstatic-Quellen und Weiterleitungen.
Lassen Sie uns sehen, wie einfach es ist, einen Google-Spiegel einzurichten.
location / {
google on;
}
Was? Machen Sie Witze?
Ja, es ist so einfach!
Demoseite https://g2.wen.lu

Abhängigkeiten
pcreUnterstützung für reguläre Ausdrückengx_http_proxy_moduleUnterstützung für Backend-Proxyngx_http_substitutions_filter_moduleUnterstützung für mehrere Ersetzungen
Neueste Quelle herunterladen
@siehe http://nginx.org/en/download.html
wget http://nginx.org/download/nginx-1.7.8.tar.gz
Klonen von ngx_http_google_filter_module
@siehe https://github.com/cuber/ngx_http_google_filter_module
git clone https://github.com/cuber/ngx_http_google_filter_module
Klonen von ngx_http_substitutions_filter_module
@siehe https://github.com/yaoweibin/ngx_http_substitutions_filter_module
git clone https://github.com/yaoweibin/ngx_http_substitutions_filter_module
##### Brandneue Installation #####
``` bash
#
## NGINX individuell konfigurieren
## Ersetzen Sie </path/to/> durch Ihren tatsächlichen Pfad
#
./configure \
<your configuration> \
--add-module=</path/to/>ngx_http_google_filter_module \
--add-module=</path/to/>ngx_http_substitutions_filter_module
Migration von einer bestehenden Distribution
#
## Holen Sie sich die Konfiguration des bestehenden NGINX
## Ersetzen Sie </path/to/> durch Ihren tatsächlichen Pfad
#
</path/to/>nginx -V
> nginx version: nginx/ <version>
> built by gcc 4.x.x
> configure arguments: <configuration>
#
## Laden Sie die gleiche Version des NGINX-Quellcodes herunter
## @siehe http://nginx.org/en/download.html
## Ersetzen Sie <version> durch Ihre NGINX-Version
#
wget http://nginx.org/download/nginx-<version>.tar.gz
#
## NGINX konfigurieren
## Ersetzen Sie <configuration> durch Ihre NGINX-Konfiguration
## Ersetzen Sie </path/to/> durch Ihren tatsächlichen Pfad
#
./configure \
<configuration> \
--add-module=</path/to/>ngx_http_google_filter_module \
--add-module=</path/to/>ngx_http_substitutions_filter_module
#
## Wenn einige Bibliotheken fehlen, sollten Sie diese mit dem Paketmanager installieren
## z.B. apt-get, pacman, yum ...
#
Verwendung
Grundkonfiguration
resolver wird benötigt, um Domains aufzulösen.
server {
# ... Teil der Serverkonfiguration
resolver 8.8.8.8;
location / {
google on;
}
# ...
}
Google Scholar
google_scholar hängt von google ab, daher kann google_scholar nicht unabhängig verwendet werden.
Heutzutage hat Google Scholar von http auf https migriert, und ncr wird unterstützt, sodass die tld von Google Scholar nicht mehr benötigt wird.
location / {
google on;
google_scholar on;
}
Google Sprache
Die Standardsprache kann über google_language festgelegt werden. Wenn sie nicht eingerichtet ist, wird zh-CN die Standardsprache sein.
location / {
google on;
google_scholar on;
# Sprache auf Deutsch setzen
google_language de;
}
Unterstützte Sprachen sind unten aufgeführt.
ar -> Arabisch
bg -> Bulgarisch
ca -> Katalanisch
zh-CN -> Chinesisch (vereinfacht)
zh-TW -> Chinesisch (traditionell)
hr -> Kroatisch
cs -> Tschechisch
da -> Dänisch
nl -> Niederländisch
en -> Englisch
tl -> Filipino
fi -> Finnisch
fr -> Französisch
de -> Deutsch
el -> Griechisch
iw -> Hebräisch
hi -> Hindi
hu -> Ungarisch
id -> Indonesisch
it -> Italienisch
ja -> Japanisch
ko -> Koreanisch
lv -> Lettisch
lt -> Litauisch
no -> Norwegisch
fa -> Persisch
pl -> Polnisch
pt-BR -> Portugiesisch (Brasilien)
pt-PT -> Portugiesisch (Portugal)
ro -> Rumänisch
ru -> Russisch
sr -> Serbisch
sk -> Slowakisch
sl -> Slowenisch
es -> Spanisch
sv -> Schwedisch
th -> Thailändisch
tr -> Türkisch
uk -> Ukrainisch
vi -> Vietnamesisch
Spider-Ausschluss
Die Spinnen von Suchmaschinen dürfen Google-Spiegel nicht crawlen.
Die Standard-robots.txt, die unten aufgeführt ist, wurde bereits integriert.
User-agent: *
Disallow: /
google_robots_allow auf on gesetzt ist, wird die robots.txt durch die Version von Google selbst ersetzt. #...
location / {
google on;
google_robots_allow on;
}
#...
Upstreaming
upstream kann Ihnen helfen, die Kosten für die Namensauflösung zu vermeiden, die Möglichkeit der Erkennung durch Google-Roboter zu verringern und über bestimmte Server zu proxyen.
upstream www.google.com {
server 173.194.38.1:443;
server 173.194.38.2:443;
server 173.194.38.3:443;
server 173.194.38.4:443;
}
Proxy-Protokoll
Standardmäßig verwendet der Proxy https, um mit Backend-Servern zu kommunizieren.
Sie können google_ssl_off verwenden, um einige Domains dazu zu zwingen, auf das http-Protokoll zurückzufallen.
Es ist nützlich, wenn Sie einige Domains über ein anderes Gateway ohne SSL-Zertifikat proxyen möchten.
#
## z.B.
## ich möchte die Domain 'www.google.com' so proxyen
## vps(hk) -> vps(us) -> google
#
#
## Konfiguration von vps(hk)
#
server {
# ...
location / {
google on;
google_ssl_off "www.google.com";
}
# ...
}
upstream www.google.com {
server < ip von vps(us) >:80;
}
#
## Konfiguration von vps(us)
#
server {
listen 80;
server_name www.google.com;
# ...
location / {
proxy_pass https://www.google.com;
}
# ...
}
GitHub
Sie finden möglicherweise zusätzliche Konfigurationstipps und Dokumentationen für dieses Modul im GitHub-Repository für nginx-module-google.