# IIS PHP Skript alle 5 min aufrufen



## Darian (8. September 2009)

Hallo Leute,

es gibt bei uns so ein Skript was Daten exportiert, und wo anders wieder importiert.

Dieses möchte ich jetzt gerne direkt am Server alle 5 min aufrufen lassen.

Sonst habe ich es mit einem Skript von einem externen Linux server gemacht, das funktioniert jetzt aber komischerweise nicht mehr. 

Normalerweise kann ich doch mit Rechte Maustaste => Run es einfach starten.

Nur leider kriege ich dann immer einen 403 forbidden. Dieser LinuxServer ist in die Jahre gekommen, und darum muss er weg, beim Umziehen auf einen anderen hat es Probleme gegeben, und darum würde ich es jetzt gerne direkt am Server einfach starten.

Folgende Meldungen kommt wenn ich auf Run klicke:

- This application has failed to start because OCI.dll was not found. Re-installing the application may fix the problem.
- This application has failed to start because OCI.dll was not found. Re-installing the application may fix the problem.
- This application has failed to start because OCI.dll was not found. Re-installing the application may fix the problem.
- This application has failed to start because LIBPQ.dll was not found. Re-installing the application may fix the problem.
- This application has failed to start because sqlite3.dll was not found. Re-installing the application may fix the problem.
- This application has failed to start because LIBPQ.dll was not found. Re-installing the application may fix the problem.
- This application has failed to start because aspell-15.dll was not found. Re-installing the application may fix the problem.
- This application has failed to start because libcs.dll was not found. Re-installing the application may fix the problem.

Da die selben Fehler öfter kommen, nehme ich an es liegt am Code direkt (von extern funktioniert aber der selbe Code)

Wenn ich es in der Konsole mache mit: php skript.php, passiert das selbe.

Wie lösen? Mir ist es mittlerweile schon egal ob von Linux aus oder vom IIS direkt.

Würde mich über Infos freuen.

thx und lg
Darian


----------



## Arne Buchwald (10. September 2009)

Hi Darian,

das klingt in der Tat leicht verwirrend. Ich fürchte, dass hier ein strukturierter Ansatz nötig ist, um festzustellen, wo welche Voraussetzungen (fehlende DLLs) nicht erfüllt sind. Möglicherweise werden verschiedene php.ini Dateien verwendet, sodass unter bestimmten Bedingungen die DLLs eingebunden sind (oder eben nicht). Durchsuche den Rechner einfach mal nach "php.ini" und vergleiche die Dateien untereinander.

Viele Grüße,
Arne


----------



## Darian (10. September 2009)

Hi, gleich einmal danke für die Infos, ich denke das hat mich schon ein wenig weiter gebracht.

Ich selbst wusste nicht dass es auch zwei php.ini geben kann 

Ich nehme mal an es geht um das extension_dir=

Folgende php.ini habe ich:

c:\hp\hpsmh\bin\php.ini
c:\WINDOWS\php.ini

In der ersten steht folgendes:
extension_dir=C:\hp\hpsmh\modules\ => nur mod_*.so und nur 2 .dll

In der zweiten(der normaleren): 
extension_dir="C:\PHP5\ext" => alles voll mit php_*.dll
Aber die Datein die in den Fehlern erwähnt werden, sind auch hier nicht.

Trotzdem komisch dass es von extern zu funktionieren scheint 

Habe C: nach sqlite3.dll durchsucht, und habe nichts gefunden.

Wie könnte ich jetzt weiter machen?

thx und lg
Darian


----------



## Arne Buchwald (11. September 2009)

Hi Darian,

hmm, ok, dann würde ich jetzt ganz von vorne beginnen. Guck dir mal die URL an, welche Domain dort enthalten ist und prüfe im DNS, ob die auch auf den richtigen Server aufgelöst wird. Klingt sehr trivial, aber hat schon manch graue Haare bei Administratoren verursacht 

Wenn die Domain auf den richtigen Server zeigt, gucke dir mal die IIS-Konfiguration an, d.h. gucke, welches Verzeichnis für die Domain als Basisverzeichnis eingestellt ist. Lege dann einfach zum Testen, ob die Konfiguration auch aktiv ist, mal eine Testdatei ala index_test.html mit dem Inhalt "Hallo Welt" in das Verzeichnis und rufe die URL mit der Testdatei auf.

Wenn das auch klappen sollte (was wünschenswert wäre), muss man sich die PHP-Datei genau angucken, d.h. Zeile für Zeile durchgehen, welche Erweiterungen wo eingebunden würden ...

Probiere erstmal die obigen Basisvoraussetzungen - dann sehen wir weiter 

Viele Grüße,
Arne


----------



## Darian (18. September 2009)

Bin da heute um einiges klüger geworden.

Habe heute erfahren dass da irgendwie was komisch von der Firewall gemacht wird, und ich daher nur von einem externen Netz darauf zugreifen kann.

Da der neue Linux Rechner der es sonst extern aufruft, auch im selben Netz ist, ging es daher nicht.

Der alte hatte keine Probleme, da er ja extern war. Benutze jetzt derzeit einen anderen externen, der das macht.

Das ist aber auch nicht gerade geschickt, wie könnte ich es direkt am Server aufrufen?

Also wie kriege ich da jetzt die Fehler weg?

Normalerweise müsste es funktionieren mit Rechter Maustaste => Run. (glaube ich zumindest)

thx und lg
Darian


----------



## Darian (21. September 2009)

Hallo Leute,

es hat sich nun doch etwas geändert. Mir ist aufgefallen dass zwar die ganzen Seiten irgendwie funktionieren. Aber genau bei meiner gls.php (die die ich brauche) bekomme ich einen Fehler.


```
You are not authorized to view this page

HTTP Error 402.6 - Forbidden: IP adress of the client has been rejected.
```

Aber komischerweise nur bei diesem File. Was könnte da wohl los sein?

<edit> Habe jetzt für dieses File, die Grant Rechte mit der IP des aufrufenden Servers gesetzt, jetzt geht es.
Früher oders später müsste ich es trotzdem noch auf lokal umstellen.
</edit>

thx und lg
Darian


----------

