详解Nginx与Apache共用80端口的配置方法
这篇文章主要介绍了Nginx与Apache共用80端口的配置方法,当然如果想Nginx不与Apache抢80端口的话,本文后面也附带了Nginx的端口修改方法,需要的朋友可以参考下
一个典型的 Nginx + Apache 应用方案可以是Nginx 占用 80 端口,过滤静态请求,然后动态请求即 Proxy 到 Apache 的 8080 端口。Proxy 反向代理的好处是访问的时候,始终就是 80 端口,来访者不会觉察到有任何的区别。
但有的应用确非常“聪明”,识别到 Apache 所位于的端口是 8080 ,就会把相关的超链接都一并加上 :8080 的后续。这么就死定了,还能有正常访问麽?!
有个方法可以解决这事,就是把 apache 也运行在80端口上。同一台服务器,有Nginx 也有 Apache,2个httpd服务,都是80,不会冲突麽?
下边就是举例方法。
Nginx.conf 的配置中
server { listen 80; server_name www.webyang.net; }
修改一下。
server { listen 192.168.3.3:80; #指定Nginx只占用某个IP的80端口。 listen 192.168.10.3:80; #如果你服务器中有多个IP,还可以指定多个。 server_name www.webyang.net; }
如果你在Nginx有多个虚拟主机,每一个都需要这么修改。
然后轮到 apache 的 httpd.conf
把原来的
Listen 80
改为
Listen 127.0.0.1:80
跟Nginx一样,指定apache所占用的IP及端口。
保存退出,重启apache即可生效。
如果你 apache 上也有多个虚拟主机。无需好像Nginx那样逐一修改,只要都是 80 端口既可。
如:
NameVirtualHost *:80 <VirtualHost *:80> ServerAdmin hello@abc.com DocumentRoot /data/web_server/admin ServerName www.webyang.net </VirtualHost>
这样你是不是以为,就已经万事大吉了?非也。
这样的apache只能通过http://127.0.0.1:80才能访问,那么他还占用80端口就没有意义了。还不如apache用8080,nginx用80算了。
所以此时如果你的服务器有多ip,除了把apache绑定在 127.0.0.1 还能绑定另外一张网卡的IP,那么问题就解决。
可是一般人都是只有一个独立ip的,所以这种方法对很多人来讲就是海市蜃楼。
修改一种思路,apache还是8080端口,修改其中的一个nginx的域名的conf文件
location / { try_files $uri @apache; } location @apache { internal; proxy_pass http://127.0.0.1:8080; } location ~ .*.(php|php5)?$ { proxy_pass http://127.0.0.1:8080; }
此时,该域名全部动作都走Apache了,包括静态文件。
也有很多人下面这种写法:
upstream zend { server 127.0.0.1:8080; } location / { proxy_pass http://zend; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Scheme $scheme; } location ~ .*.(php|php5)?$ { proxy_pass http://zend; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Scheme $scheme; }
大体类似。
Nginx的端口修改
修改 nginx.conf 文件实现。在 Linux 上该文件的路径为 /usr/local/nginx/conf/nginx.conf,Windows 下 安装目录\conf\nginx.conf。
server { listen 80; server_name localhost; …… }
改成
server { listen 81; server_name localhost; location / { root html; index index.html index.htm; } …… }
当然改成 8080,8081 什么的都可以,不一定要 81,但是确保 iptable 要放开对该端口的访问。
注意到 location 的配置:
root html; #根目录,相对于安装目录 index index.html index.htm; #默认主页
默认,你把文件放在安装目录下的 html 文件夹,即可通过 Nginx 访问。
相关推荐:
Atas ialah kandungan terperinci 详解Nginx与Apache共用80端口的配置方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Ujian dan penyahpepijatan serentak Ujian dan penyahpepijatan serentak dalam pengaturcaraan serentak Java adalah penting dan teknik berikut tersedia: Ujian serentak: Ujian unit: Asingkan dan uji satu tugas serentak. Ujian integrasi: menguji interaksi antara pelbagai tugas serentak. Ujian beban: Nilaikan prestasi dan kebolehskalaan aplikasi di bawah beban berat. Penyahpepijatan Konkurensi: Titik Putus: Jeda pelaksanaan utas dan periksa pembolehubah atau jalankan kod. Pengelogan: Rekod peristiwa dan status urutan. Jejak tindanan: Kenal pasti sumber pengecualian. Alat visualisasi: Pantau aktiviti benang dan penggunaan sumber.

Untuk menambah pelayan pada Eclipse, ikuti langkah berikut: Cipta persekitaran masa jalan pelayan Konfigurasikan pelayan Cipta contoh pelayan Pilih persekitaran masa jalan pelayan Konfigurasi contoh pelayan Mulakan projek penggunaan pelayan

1. Latar Belakang Pembinaan 58 Portrait Platform Pertama sekali, saya ingin berkongsi dengan anda latar belakang pembinaan 58 Portrait Platform. 1. Pemikiran tradisional platform pemprofilan tradisional tidak lagi mencukupi Membina platform pemprofilan pengguna bergantung pada keupayaan pemodelan gudang data untuk menyepadukan data daripada pelbagai barisan perniagaan untuk membina potret pengguna yang tepat untuk memahami tingkah laku, minat pengguna dan keperluan, dan menyediakan keupayaan sampingan, akhirnya, ia juga perlu mempunyai keupayaan platform data untuk menyimpan, bertanya dan berkongsi data profil pengguna dan menyediakan perkhidmatan profil dengan cekap. Perbezaan utama antara platform pemprofilan perniagaan binaan sendiri dan platform pemprofilan pejabat pertengahan ialah platform pemprofilan binaan sendiri menyediakan satu barisan perniagaan dan boleh disesuaikan atas permintaan platform pertengahan pejabat berkhidmat berbilang barisan perniagaan, mempunyai kompleks pemodelan, dan menyediakan lebih banyak keupayaan umum. 2.58 Potret pengguna latar belakang pembinaan potret di platform tengah 58

Untuk berjaya menggunakan dan menyelenggara tapak web PHP, anda perlu melakukan langkah berikut: Pilih pelayan web (seperti Apache atau Nginx) Pasang PHP Cipta pangkalan data dan sambungkan PHP Muat naik kod ke pelayan Sediakan nama domain dan Pemantauan DNS penyelenggaraan tapak web langkah termasuk mengemas kini PHP dan pelayan web, dan membuat sandaran tapak web, memantau log ralat dan mengemas kini kandungan.

Jika masalah terakhir yang anda hadapi dengan iPhone anda ialah dengan port pengecasan. Jika anda tidak dapat mengesahkan mengecas iPhone anda, ia tidak akan bertahan lama. Ketepikan segala-galanya dan fokus pada petua ini untuk membetulkan gesaan port pengecasan yang rosak pada telefon anda. Betulkan 1 – Periksa port pengecasan Perkara pertama yang perlu anda lakukan ialah periksa port pengecasan pada telefon anda. Langkah 1 – Tanggalkan telefon anda daripada kord kuasa. Tanggalkan sarung/penutup belakang daripada telefon. Langkah 2 – Seterusnya, periksa port pengecasan pada peranti anda. Langkah 3 – Ambil sekeping kecil pencungkil gigi. Pastikan petua bersih dan bebas daripada kelembapan. Langkah 4 – Gunakannya untuk membersihkan sebarang habuk dari soket pengecasan atau mana-mana zarah lain dalam slot. Pastikan anda membersihkannya dengan betul. Selepas ini, cuba cas iPhone anda menggunakan kord kuasa.

Cara Melaksanakan Amalan Terbaik Keselamatan PHP PHP ialah salah satu bahasa pengaturcaraan web bahagian belakang paling popular yang digunakan untuk mencipta laman web dinamik dan interaktif. Walau bagaimanapun, kod PHP boleh terdedah kepada pelbagai kelemahan keselamatan. Melaksanakan amalan terbaik keselamatan adalah penting untuk melindungi aplikasi web anda daripada ancaman ini. Pengesahan input Pengesahan input ialah langkah pertama yang kritikal dalam mengesahkan input pengguna dan mencegah input berniat jahat seperti suntikan SQL. PHP menyediakan pelbagai fungsi pengesahan input, seperti filter_var() dan preg_match(). Contoh: $username=filter_var($_POST['username'],FILTER_SANIT

KubernetesOperator memudahkan penggunaan awan PHP dengan mengikut langkah berikut: Pasang PHPOperator untuk berinteraksi dengan gugusan Kubernetes. Gunakan aplikasi PHP, isytiharkan imej dan port. Urus aplikasi menggunakan arahan seperti mendapatkan, menerangkan dan melihat log.

Protokol dan perpustakaan yang biasa digunakan untuk pengaturcaraan rangkaian Java: Protokol: TCP, UDP, HTTP, HTTPS, Perpustakaan FTP: java.net, java.nio, ApacheHttpClient, Netty, OkHttp
