Heim Themen IIS Einführung in die Konfiguration eines PHP-Servers auf IIS

Einführung in die Konfiguration eines PHP-Servers auf IIS

Feb 20, 2021 am 09:34 AM
iis PHP konfigurieren

Einführung in die Konfiguration eines PHP-Servers auf IIS

Empfohlen (kostenlos): IIS

1. Laden Sie den PHP-Interpreter herunter

Die Adresse lautet http://windows.php.net/download/

Es gibt zwei Versionen, Thread sicher Und Nicht-Thread-Sicherheit, Thread-Sicherheit ist für Apache, Nicht-Thread-Sicherheit ist für IIS, wir möchten es mit IIS konfigurieren, also laden Sie die Nicht-Thread-Sicherheit herunter, x86 und x64, je nach System Ihrer Maschine, wählen Sie die entsprechende Version einfach herunterladen.

2. Installieren Sie den PHP-Interpreter

php. Man kann sagen, dass es nicht nötig ist, die Datei nach c:php zu entpacken (normalerweise nicht auf der Systemfestplatte abzulegen). im E:PHP)Ordner. Die Installation ist abgeschlossen.

3. Konfigurieren Sie php.ini

Kopieren Sie php.ini-development, benennen Sie es in php.ini um und nehmen Sie die folgenden Änderungen vor:

<1>Der Pfad des Erweiterungs-Plug-ins

; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
 extension_dir = "c:\PHP\ext"
Nach dem Login kopieren

Ändern Geben Sie in der letzten Zeile Ihre eigene Adresse ein. Die echte PHP-Interpreter-Adresse, gefolgt vom ext-Ordner, der alle Plug-Ins enthält.

<2>Legen Sie fest, welche Plug-Ins eingeführt werden sollen Entfernen Sie einfach das Semikolon davor. Ich habe hier nur MySQL, MySQL und MBString eingeführt.

?

; Windows Extensions
; Note that ODBC support is built in, so no dll is needed for it.
; Note that many DLL files are located in the extensions/ (PHP 4) ext/ (PHP 5)
; extension folders as well as the separate PECL DLL download (PHP 5).
; Be sure to appropriately set the extension_dir directive.
;
;extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_fileinfo.dll
;extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
extension=php_mbstring.dll
;extension=php_exif.dll      ; Must be after mbstring as it depends on it
extension=php_mysql.dll
extension=php_mysqli.dll
;extension=php_oci8_12c.dll  ; Use with Oracle Database 12c Instant Client
;extension=php_openssl.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
;extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
;extension=php_shmop.dll
Nach dem Login kopieren

<8>Sitzungsspeicherpfad

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Shanghai
Nach dem Login kopieren

<9>Datenbank

mysql.default_port = 3306

mysql.default_host = localhost

mysql.default_user =. root

<10>output Cache

; This directive determines whether or not PHP will recognize code between
; <? and ?> tags as PHP source which should be processed as such. It is
; generally recommended that <?php and ?> should be used and that this feature
; should be disabled, as enabling it may result in issues when generating XML
; documents, however this remains supported for backward compatibility reasons.
; Note that this directive does not control the <?= shorthand tag, which can be
; used regardless of this directive.
; Default Value: On
; Development Value: Off
; Production Value: Off
; http://php.net/short-open-tag
short_open_tag = On
Nach dem Login kopieren

< 11> ;Begrenzen Sie die maximale Upload-Dateigröße

; FastCGI under IIS (on WINNT based OS) supports the ability to impersonate
; security tokens of the calling client.  This allows IIS to define the
; security context that the request runs under.  mod_fastcgi under Apache
; does not currently support this feature (03/17/2002)
; Set to 1 if running under IIS.  Default is zero.
; http://php.net/fastcgi.impersonate
fastcgi.impersonate = 1
Nach dem Login kopieren

<12>PHP-Version ausblenden

Ändern Sie „Ein“ auf „Aus“, die PHP-Version wird nicht im Header angezeigt

; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI.  PHP&#39;s
; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok
; what PATH_INFO is.  For more information on PATH_INFO, see the cgi specs.  Setting
; this to 1 will cause PHP CGI to fix its paths to conform to the spec.  A setting
; of zero causes PHP to behave as before.  Default is 1.  You should fix your scripts
; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.
; http://php.net/cgi.fix-pathinfo
cgi.fix_pathinfo=1
Nach dem Login kopieren

4. Legen Sie php.ini im Systemverzeichnis ab

Nachdem die Konfiguration abgeschlossen ist, platzieren Sie eine Kopie von php.ini unter c:windows. Beachten Sie, dass Sie dies nicht mehr tun müssen, wenn Sie iis7 unter Win7 verwenden.

5. IIS konfigurieren (IIS wurde standardmäßig installiert, die Installation von IIS wird hier nicht vorgestellt)

<1>HandlerMappings


Nach dem Klicken OK, es erscheint ein Warndialogfeld. Klicken Sie einfach auf „Ja“.

Hinweis: Das FastCgiModule-Modul ist zu Beginn möglicherweise nicht verfügbar. Um Windows-Funktionen ein- oder auszuschalten: Webserver IIS – Rollendienst hinzufügen – CGI zur Installation aktivieren.

<2>ISAPI- und CGI-Einschränkungen

<3>Site hinzufügen

Erstellen Sie einen Ordner unter einem bestimmten Pfad, fügen Sie die Site in IIS hinzu, fügen Sie diesen Ordner hinzu. Fügen Sie ihn hinzu als eine Site

Beachten Sie, dass Sie nach dem Hinzufügen der Site den Benutzer „Everyone“ hinzufügen und vollständige Berechtigungen erteilen müssen.

<4>Legen Sie die Standardseite der Website fest

<5>Fügen Sie eine Standardseite hinzuErstellen Sie eine Datei mit dem Namen index.php im Stammverzeichnis der Website, in Geben Sie

; cgi.force_redirect is necessary to provide security running PHP as a CGI under
; most web servers.  Left undefined, PHP turns this on by default.  You can
; turn it off here AT YOUR OWN RISK
; **You CAN safely turn this off for IIS, in fact, you MUST.**
; http://php.net/cgi.force-redirect
cgi.force_redirect = 0
Nach dem Login kopieren
<6> ein Überprüfen Sie, ob die Datei index.php erfolgreich analysiert wurde, und zeigen Sie relevante Informationen zu PHP an.

有可能出现的错误:访问可能出现“FastCGI进程意外退出500错误”。默认已经有一个网站占用了所有端口,现在我们又添加一个网站可能导致冲突,把默认那个网站停止就可以了。

6、集成CodeIgniter框架

<1>下载CodeIgniter

下载地址:http://codeigniter.org.cn/

<2>整合CodeIgniter

解压之后,打开CodeIgniter文件夹,将里面的内容复制粘贴到站点的根目录,会提示是否替换掉原来的index.php文件,选择"是",这样框架就算整合完毕了

打开浏览器访问主页,看到的是CodeIgniter框架的提示信息!

<3>添加favicon图标

每个page都会自动去加载favicon图标,因此应该在index.php目录下放置favicon.ico文件,不然都会报错,显示找不到图标。

7、有可能出现的问题

<1>丢失 MSVCR110.dll

第一次访问php网站可能会出现“无法启动此程序,因为计算机中丢失 MSVCR110.dll”的错误,应该这样解决:

-打开微软下载页面:http://www.microsoft.com/zh-CN/download/details.aspx?id=30679

-点击下载

-选择相应的版本,64就选64,32就选32

-点击下载

-安装

完成之后网站就可以正常访问了。

<2>唯一密钥属性“value”设置…无法添加类型为add

在web.config-files节点改为:

            <files>
 <clear />
                 <add value="index.php" />
 <add value="index.html" />
             </files>
Nach dem Login kopieren

<3>服务器部署中常见问题

服务器碰见了一些问题 ,一个就是上面说的value属性,value设置好之后就是cgi问题,没有权限之类的,把php引擎的文件夹设置everyone之后,发现cgi意外退出,直接打开cgi,发现原来是丢失 MSVCR110.dll,把丢失 MSVCR110.dll装上之后好了。

注意,因为把system和application文件夹移到web目录以外,但是程序在访问的时候仍然会访问到这两个文件夹,因此也要把这两个文件夹添加everyone。

<4>升级php7遇到的问题

升级php7传说中性能可以提升很多倍。php5竟然是10多年前的产物...

配置php.ini没碰到什么问题,主要一个是mysql.dll的选项没了,配置数据库的port、username等都不是mysql而是mysqli,这些我就没弄了,在CI里面会有配置,应该没什么大问题。

开始运行,cgi异常。直接打开cgi发现报错:丢失VCRUNTIME140.dll。这个错误是因为最新版的php7(php7.1)需要安装Visual C++Redistributable 2015。

下载地址:https://www.microsoft.com/en-US/download/details.aspx?id=48145,下载安装就好了。

<5>最便捷的解决方案

今天调试刚买的服务器,发现无论怎么弄都会报FastCgi错误,错误代码是***0005,即5号代码的错误。怎么弄都不行,一度怀疑此云服务器的FastCgiModule被阉割了,不能正常运行。

直到找到了这样一个解决方案,https://php.iis.net,可以在线安装。踏破铁鞋无觅处,得来全不费功夫。

8、在本地配置https

本地测试为了可以跟线上一致,以https来测试,必须要配置ssl证书。

Das obige ist der detaillierte Inhalt vonEinführung in die Konfiguration eines PHP-Servers auf IIS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Kann iis unter Linux verwendet werden? Kann iis unter Linux verwendet werden? Mar 23, 2023 am 09:24 AM

iis kann nicht unter Linux verwendet werden, da es sich um einen von Microsoft bereitgestellten grundlegenden Internetdienst handelt, der auf der Betriebssystemplattform Windows entwickelt wurde und daher nur unter dem Windows-Betriebssystem ausgeführt werden kann.

Der Prozess kann unter Windows 11/10 nicht auf die Dateifehlerbehebung zugreifen Der Prozess kann unter Windows 11/10 nicht auf die Dateifehlerbehebung zugreifen May 12, 2023 pm 07:10 PM

Wie wir alle wissen, kann kein anderer Prozess auf eine Datei zugreifen oder sie ändern, wenn sie gerade verwendet wird. Wenn in diesem Fall ein Prozess versucht, eine Datei zu öffnen, sperrt das Betriebssystem die Datei, um zu verhindern, dass sie von einem anderen Prozess geändert wird. „Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird“ ist eine solche Fehlermeldung, die viele Benutzer auf ihren Windows-Computern beobachten. Es ist bekannt, dass dieser Fehler in verschiedenen Versionen von WindowsOS und WindowsServer auftritt. Normalerweise wird diese Fehlermeldung bei der Verwendung des Netsh-Befehls auf dem Windows-PC des Benutzers beobachtet. Dieser Fehler tritt auch beim Versuch auf, Internetinformationsdienste (IIS) M auszuführen

So installieren Sie den Reverse-Proxy nginx1.10.1 in Windows, um auf die IIS-Website zuzugreifen So installieren Sie den Reverse-Proxy nginx1.10.1 in Windows, um auf die IIS-Website zuzugreifen May 23, 2023 pm 05:40 PM

Gehen Sie zunächst auf die offizielle Website, um das Softwarepaket herunterzuladen und zu entpacken. Es ist am besten, das Pfadproblem mit der chinesischen Nginx-Konfiguration zu vermeiden. Unter Windows kann der Dateipfad durch „\“, „\\“ getrennt werden. oder „/“. Aber „\“ verursacht am wahrscheinlichsten Probleme, also vermeiden Sie die Verwendung. Fügen Sie keinen Pfad hinzu, da sonst ein Fehler auftritt. Wenn ich ihn beispielsweise auf dem E-Laufwerk entpacke, findet der Befehl cmd den Ordner, in dem sich nginx.exe befindet, cde:\worksoftware\. nginx-1.10.1, und stellen Sie dann sicher, dass die Datei nginx.conf kein Problem darstellt. Tatsächlich ist die Konfigurationsdatei die wichtigste und wichtigste.

So öffnen Sie den IIS-Anwendungspool So öffnen Sie den IIS-Anwendungspool Apr 09, 2024 pm 07:48 PM

So öffnen Sie einen Anwendungspool in IIS: 1. Öffnen Sie den IIS-Manager. 2. Navigieren Sie zum Knoten „Anwendungspools“. 3. Klicken Sie mit der rechten Maustaste auf den Zielanwendungspool. 4. Klicken Sie auf die Registerkarte „Erweiterte Einstellungen“. . Die Konfiguration des Anwendungspools kann hier angezeigt und geändert werden.

Wie kann das Problem gelöst werden, wenn die PHP-Station IIS verwendet und der Code verstümmelt ist, Apache jedoch in Ordnung ist? Wie kann das Problem gelöst werden, wenn die PHP-Station IIS verwendet und der Code verstümmelt ist, Apache jedoch in Ordnung ist? Mar 23, 2023 pm 02:48 PM

​Wenn Sie PHP für die Website-Entwicklung verwenden, können Probleme bei der Zeichenkodierung auftreten. Insbesondere bei der Verwendung unterschiedlicher Webserver kann es vorkommen, dass IIS und Apache die Zeichenkodierung unterschiedlich handhaben. Wenn Sie IIS verwenden, werden möglicherweise verstümmelte Zeichen angezeigt, wenn Sie die UTF-8-Codierung verwenden. Bei Verwendung von Apache funktioniert jedoch alles problemlos. Wie soll diese Situation gelöst werden?

So generieren Sie eine URL aus einer HTML-Datei So generieren Sie eine URL aus einer HTML-Datei Apr 21, 2024 pm 12:57 PM

Für die Konvertierung einer HTML-Datei in eine URL ist ein Webserver erforderlich. Dazu sind die folgenden Schritte erforderlich: Besorgen Sie sich einen Webserver. Richten Sie einen Webserver ein. Laden Sie eine HTML-Datei hoch. Erstellen Sie einen Domainnamen. Leiten Sie die Anfrage weiter.

Wie man iis löst, kann nicht gestartet werden Wie man iis löst, kann nicht gestartet werden Dec 06, 2023 pm 05:07 PM

Lösungen für den Startfehler: 1. Überprüfen Sie die Portbelegung. 4. Starten Sie IIS neu. 6. Überprüfen Sie die Metabasisdatei . Überprüfen Sie die Dateiberechtigungen. 8. Aktualisieren Sie das Betriebssystem und die Anwendungen. 9. Vermeiden Sie die Installation zu vieler unnötiger Software. Detaillierte Einführung: 1. Überprüfen Sie die Integrität von Systemdateien, führen Sie Tools zur Überprüfung von Systemdateien aus, überprüfen Sie die Integrität von Systemdateien usw.

Können iis-Protokolldateien gelöscht werden? Können iis-Protokolldateien gelöscht werden? Apr 09, 2024 pm 07:45 PM

Ja, es ist möglich, IIS-Protokolldateien zu löschen. Zu den Entfernungsmethoden gehören die Auswahl der Website oder des Anwendungspools über den IIS-Manager und das Löschen der Protokolldatei auf der Registerkarte „Protokolldateien“. Verwenden Sie eine Eingabeaufforderung, um zum Speicherverzeichnis der Protokolldatei zu wechseln (normalerweise %SystemRoot%\System32\LogFiles\W3SVC1) und verwenden Sie den Befehl del, um die Protokolldatei zu löschen. Verwenden Sie Tools von Drittanbietern wie Log Parser, um Protokolldateien automatisch zu löschen.

See all articles