Rumah pembangunan bahagian belakang tutorial php 凡事不求甚解,遇事必定抓瞎——PHP开发Apache服务器配置备忘录

凡事不求甚解,遇事必定抓瞎——PHP开发Apache服务器配置备忘录

Aug 08, 2016 am 09:21 AM
conf directory httpd wamp

照此配置流程,绝对一路畅通,可保无虞。

昨天弄了个PHP小程序,想在本地跑一下测试,可是工作电脑没有安装环境,于是下载了一个wamp,一路畅通,Apache、Mysql、PHP就全有了。启动wamp服务,在浏览器里输入“http://localhost”,访问正常,跳出wamp首页。于是,下面想把自己的CrashServer网站配置到Apache里,可以通过虚拟域名在本地访问测试,结果遇到不少问题,今日一通Google研究,终于任督二脉全通。

1、首先,Apache的配置文件是httpd.conf和httpd-vhosts.conf,我们先来看下wamp安装好后,httpd.conf的默认配置。

<span>DocumentRoot "d:/wamp/www/"

</span><span><span>Directory </span><span>/></span><span>    AllowOverride none
    Require all denied
</span><span></span><span>Directory</span><span>></span><span><span>Directory </span><span>"d:/wamp/www/"</span><span>></span><span>    Options Indexes FollowSymLinks
    AllowOverride all
    Require local
</span><span></span><span>Directory</span><span>><br></span></span></span>
Salin selepas log masuk

# Virtual hosts
#Include conf/extra/httpd-vhosts.conf

<span> </span>
Salin selepas log masuk

要想通过虚拟域名访问网站,就需要配置一下httpd-vhosts.conf。那么需要启动httpd-vhosts.conf,因为默认是关闭的,所以把配置文件中#Include conf/extra/httpd-vhosts.conf前面的#去掉。于是httpd-vhosts.conf启用了,那么我们去编辑httpd-vhosts.conf这个文件。

2、httpd-vhosts.conf文件的位置,在apache目录下的conf/extra,上面的Include conf/extra/httpd-vhosts.conf其实已经告诉了你它的位置。

在这个文件中,添加配置我上面的CrashServer网站:

<span>NameVirtualHost *:80</span><span><span>VirtualHost </span><span>*:80</span><span>></span><span>    DocumentRoot "D:/wamp/www/CrashServer"
    ServerName crash.com
</span><span></span><span>VirtualHost</span><span>></span></span>
Salin selepas log masuk

首先,我的CrashServer是放在wamp/www下面的,这是wamp默认的网站目录,其次,我想在本地测试的时候,用crash.com就能访问到CrashServer,于是配置如上。

在这里,为了让我们能通过crash.com访问本地站点,所以需要修改hosts文件,添加 127.0.0.1  crash.com。

到这里,配置完毕了,于是重启Apache,输入crash.com访问,结果正常访问。但是,当以localhost访问时,原来出现的是wamp的主页,现在却显示CrashServer了,于是还要在hosts里追加 127.0.0.1  localhost,在httpd-vhosts.conf中,追加上localhost的站点配置,现在看起来就是这样了:

<span>NameVirtualHost *:80

</span><span><span>VirtualHost </span><span>*:80</span><span>></span><span>    DocumentRoot "D:/wamp/www"
    ServerName localhost
</span><span></span><span>VirtualHost</span><span>></span><span><span>VirtualHost </span><span>*:80</span><span>></span><span>    DocumentRoot "D:/wamp/www/CrashServer"
    ServerName crash.com
</span><span></span><span>VirtualHost</span><span>></span></span></span>
Salin selepas log masuk

OK,到此基本可以结束了,网站都配置好了,看起来非常非常的简单。但是对于我却不是这样的,我昨天碰到了如下问题。

首先,我的CrashServer一开始不是放在wamp/www下的,而是放在E:\360Downloads下面的,于是就有了如下配置:

<span><span>VirtualHost </span><span>*:80</span><span>></span><span>    DocumentRoot "E:/360Downloads/CrashServer"
    ServerName crash.com
</span><span></span><span>VirtualHost</span><span>></span></span>
Salin selepas log masuk

这没错吧,路径都对,虚拟域名也对,可是访问的时候,却提示403 Forbidden,没有权限。于是Google,哦,知道了原来是要给CrashServer目录加上权限,于是修改配置如下:

<span><span>VirtualHost </span><span>*:80</span><span>></span><span>    DocumentRoot "E:/360Downloads/CrashServer"
    ServerName crash.com

    </span><span><span>Directory </span><span>E:/360Downloads/CrashServer</span><span>></span><span>        Order Allow,Deny
        Allow from All
        Require all granted
    </span><span></span><span>Directory</span><span>></span><span></span><span>VirtualHost</span><span>></span></span></span>
Salin selepas log masuk

重启Apache,访问正常了。首先,新增的Directory,是可以在httpd.conf中添加的,也可以在httpd-vhosts.conf中添加,我认为在后者里面添加更好,配置内容更加清晰明了,项目目录权限跟随着项目站点配置。在上面新增的Directory中,我们给了360Downloads下的CrashServer目录加了权限,允许访问了,所以就不再提示403 Forbidden了。

这个问题,现在写起来是这么的简单轻松,可问题出现的时候,却很让人困扰和郁闷。对于项目在wamp/www之外的,需要给项目目录权限才可,注意:

<span>Order Allow,Deny
Allow from All
Require all granted</span>
Salin selepas log masuk

这三条缺一不可,这是配置了允许外部计算机访问服务器站点。

3、今天问题解决后,想到通过同一局域网下的其他设备访问我的站点,于是用手机,在浏览器中输入我的电脑的ip,不能访问,再次Google,原来需要修改在httpd.conf中的配置:

<span><span>Directory </span><span>"d:/wamp/www/"</span><span>></span><span>    Options Indexes FollowSymLinks
    AllowOverride all
    Require local
</span><span></span><span>Directory</span><span>></span></span>
Salin selepas log masuk

其中,Require local,没Google出来,但看名字知道,是只允许本地访问,于是改成Require all granted,允许所有请求访问,手机就可以访问了。

参考,http://roteg.iteye.com/blog/1465380,这里是访问验证配置的解释。

这里,有篇老外写的配置博文,很好,https://www.kristengrote.com/blog/articles/how-to-set-up-virtual-hosts-using-wamp#wamp-step-7,但是唯独一点,在他的Step 7的时候,给项目目录添加权限:

<span><span>Directory </span><span>C:/Users/Kristen/Documents/Projects</span><span>></span><span>    Order Deny,Allow   
    Allow from all 
</span><span></span><span>Directory</span><span>></span></span>
Salin selepas log masuk

却恰恰少了Require all granted,导致最后还是403 Forbidden,搞得我非常郁闷。

此配置是在如下wamp环境进行的:

至此,在Apache下配置PHP站点,全部完成。

以上就介绍了凡事不求甚解,遇事必定抓瞎——PHP开发Apache服务器配置备忘录,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Pengguna dan Komputer Direktori Aktif Tiada [Diperbaiki dalam 3 Cara] Pengguna dan Komputer Direktori Aktif Tiada [Diperbaiki dalam 3 Cara] Apr 20, 2023 pm 01:25 PM

Kehilangan Pengguna dan Komputer Direktori Aktif (ADUC) adalah salah satu isu paling mengecewakan yang dilaporkan oleh ramai pengguna Windows Pro. ADUC ialah snap-in MMC yang luar biasa yang membolehkan pentadbir mengurus Microsoft Active Directory. Walau bagaimanapun, atas sebab tertentu ia tiada dalam edisi Windows Server atau Enterprise/Pro. Mari kita lihat dengan lebih dekat mengapa ia hilang dan cara kita boleh membetulkannya. Adakah Windows 11 mempunyai Active Directory? Active Directory berguna untuk sesiapa sahaja yang ingin mengurus jauh

Ajar anda untuk mencipta hos maya dan menjalankan projek php (phpstudy wamp) Ajar anda untuk mencipta hos maya dan menjalankan projek php (phpstudy wamp) Aug 07, 2022 pm 03:17 PM

Artikel ini melibatkan dua persekitaran bersepadu PHP, kedua-duanya mengandungi PHP PHPStudy mysql yang lebih berkuasa daripada WAMP dan sangat mudah dan mudah digunakan.

Bagaimana untuk mengubah suai fail php.ini dalam wamp Bagaimana untuk mengubah suai fail php.ini dalam wamp Mar 20, 2023 pm 03:33 PM

Wampserver ialah pakej perisian yang boleh memasang Apache, PHP dan MySQL pada komputer Windows. Membangunkan dan menguji tapak web PHP pada komputer tempatan anda dengan mudah dengan Wampserver. Semasa proses pembangunan, kami mungkin perlu mengubah suai fail konfigurasi PHP php.ini. Artikel ini akan memperkenalkan cara mengubah suai fail php.ini dalam Wampserver.

[Ringkasan] Sebab dan penyelesaian mengapa WAMP tidak boleh menghuraikan fail PHP [Ringkasan] Sebab dan penyelesaian mengapa WAMP tidak boleh menghuraikan fail PHP Mar 22, 2023 am 10:38 AM

​WAMP ialah pakej perisian pelayan web sumber terbuka dan percuma yang membolehkan pengguna membina persekitaran pelayan web pada sistem pengendalian Windows. Walau bagaimanapun, apabila pengguna cuba menjalankan fail PHP dalam WAMP, mereka mungkin menghadapi ralat yang tidak dapat diselesaikan. Dalam artikel ini, kami akan meneroka sebab dan penyelesaian mengapa WAMP tidak boleh menghuraikan fail PHP.

Analisis ringkas tentang penyelesaian kepada masalah fail PHP yang bercelaru dalam persekitaran WAMP Analisis ringkas tentang penyelesaian kepada masalah fail PHP yang bercelaru dalam persekitaran WAMP Mar 22, 2023 am 09:30 AM

Dalam proses menggunakan WAMP sebagai persekitaran pelayan tempatan, masalah fail PHP yang bercelaru kadangkala berlaku. Masalah seperti ini bukan sahaja akan menjejaskan penulisan kod kami, tetapi juga menjejaskan operasi biasa tapak web kami. Dalam artikel ini, kami akan memperkenalkan beberapa kaedah untuk menyelesaikan fail PHP yang bercelaru dalam WAMP.

Selesaikan masalah yang Yum Httpd tidak dapat menghuraikan PHP Selesaikan masalah yang Yum Httpd tidak dapat menghuraikan PHP Mar 22, 2024 pm 01:06 PM

Untuk menyelesaikan masalah yang YumHttpd tidak dapat menghuraikan PHP, anda memerlukan contoh kod khusus Semasa membina tapak web, anda sering menghadapi masalah bahawa Httpd yang dipasang oleh Yum tidak dapat menghuraikan PHP, mengakibatkan ketidakupayaan untuk mengakses halaman laman web secara normal. Masalah ini telah melanda ramai juruweb dan pembangun Dalam artikel ini, kami akan menyediakan beberapa penyelesaian kepada masalah ini dan memberikan contoh kod khusus. Pertama, kita perlu mengenal pasti punca masalah. Httpd tidak boleh menghuraikan PHP biasanya kerana modul PHP yang diperlukan tiada atau dikonfigurasikan dengan salah

Pasang WAMP pada CentOS dan tidak boleh klik pada desktop selepas pemasangan CentOS. Pasang WAMP pada CentOS dan tidak boleh klik pada desktop selepas pemasangan CentOS. Feb 11, 2024 pm 04:51 PM

Pengenalan kepada direktori artikel ini: CentOS memasang WAMP, memasang Apache, memasang MySQL, memasang PHP, mengkonfigurasi WAMP Selepas CentOS dipasang, anda tidak boleh memasuki desktop dan tidak boleh mengklik untuk memulakan semula persekitaran desktop konfigurasi desktop. Ubah perkongsian pengetahuan LINUX CentOS ialah sistem operasi berasaskan Linux, WAMP ialah persekitaran pembangunan untuk menjalankan aplikasi web pada sistem pengendalian Windows , kami akan memperkenalkan cara memasang WAMP pada CentOS. Untuk memasang Apache kita perlu memasang Apache sebagai pelayan web dan laksanakan arahan berikut dalam terminal

Mengapa Yum Httpd tidak mengenali fail PHP? Mengapa Yum Httpd tidak mengenali fail PHP? Mar 23, 2024 am 11:57 AM

Alat seperti Yum, Httpd dan PHP sering digunakan semasa membina tapak web, tetapi kadangkala kami menghadapi masalah yang Httpd yang dipasang oleh Yum tidak dapat mengenali fail PHP. Masalah ini mungkin menyebabkan laman web tidak berfungsi dengan baik, jadi penting untuk memahami punca masalah ini dan cara menyelesaikannya. Mula-mula, mari kita fahami mengapa YumHttpd tidak dapat mengenali fail PHP. Dalam proses membina laman web, kami biasanya memilih untuk menggunakan Apache sebagai pelayan web.

See all articles