Autor Zpráva
Juandev
Profil
Jak se spustí script na serveru? Kde by se mohl nacházet, nebo jak by se mohl jmenovat command line?
preca1
Profil
Zdravim,
na linuxovejch strojích to nejspíš bude příkaz php.
php -f ~/programming/asdf.php mi spustí soubor.
Juandev
Profil
No spíš bych radši uvažoval nelinuxovej stroj.
Joker
Profil
Juandev:
Ve Windows to bude podobně:
<cesta k instalaci PHP>/php.exe -f <cesta k souboru se skriptem>
Juandev
Profil
preca1:
příkaz php.
php -f ~/programming/asdf.php mi spustí soubor.
Joker:

To jsem se asi nepochopili. Ptám se na to kam se ten příkaz zadá. Ale už jsem tady objevil nějaký software, na spouštění skryptů.


Nicméně stále to nějak obcházím:
*v MW rozšíření MaintenanceShell
*nyní tento sw
*na lokálním serveru poklikem

Ale není mi jasné, jak to dělá běžný člověk na serveru. Spustí ho přes URL? Já k tomu nemám práva. Když je změním, nebude moci každý přes URL spouštět skript?
preca1
Profil
V linuxovym světě se tomu myslim řiká terminál, ve windowsáckym příkazová řádka (příkazový řádek).
Netušim, jak to je na windowsáckym serveru, ale v klasickejch windowsech to je Start -> Spustit -> napsat cmd -> entr.
Následně všechno ovládáš příkazama. Například pro změnu adresáře se používá cd (change directory).

Další možnost je se vzdáleně připojit pomocí ssh a pak už seš na onom stroji, ale netušim jak tohle funguje na Windows.
Joker
Profil
Juandev:
Ptám se na to kam se ten příkaz zadá.
Prostě se to spustí, jako kterákoliv jiná aplikace v počítači.
Přes terminál (příkazový řádek), příkazem Spustit z nabídky Start, jde na to vytvořit zástupce (v Linuxu spouštěč) na plochu/lištu, a tak dále.

Typicky se ale takové skripty spouštějí opakovaně (pravidelně), takže se naplánují ve Windows přes Plánovač úloh (Task Scheduler), v Linuxu přes CRON. Přihlásit se pokaždé na server a spustit skript by byl docela vopruz.

Ještě poznamenám, že při spuštění skriptu přes CLI (z příkazové řádky atd.) se může použít jiný php.ini, než při spuštění z webu. Takže kdyby skript z webu fungoval a z příkazové řádky ne, dost možná je to příčina.
Juandev
Profil
Joker:
Tak na svém PC skript umím spustit. Pokud chci spouštět skritp na serveru, který mám na hostingu, tak mi tam také nabízí CRON, který mi ale připadá dost neohrabaný. V mém případě nejde o periodické spouštění skritpů, ale spíš o nahodilé spouštení. Myslel jsem, si že to lze nějak jednoduše, že na člověka někde vystkočí nějaká příkazová řádka a ono ne.
Joker
Profil
Juandev:
Poznámka, pokud se plánované úlohy spouští přes CRON, nejspíš to bude Linuxový server (ne Windows).

Myslel jsem, si že to lze nějak jednoduše, že na člověka někde vystkočí nějaká příkazová řádka a ono ne.
Ale ono to jde velmi jednoduše, když máte server a přístup k němu: Vzdálená plocha nebo SSH a už to frčí.
Na sdíleném hostingu je to problém jednoduše proto, že tam žádný server nemáte. Máte jen práva do nějakého jednoho adresáře na disku a diskovou kvótu, ale ne přístup k serveru samotnému (na úrovni operačního systému).
Takže tam pak záleží na tom, co umožňuje poskytovatel.
Juandev
Profil
Joker:
Ale ono to jde velmi jednoduše, když máte server a přístup k němu: Vzdálená plocha nebo SSH a už to frčí.
Na sdíleném hostingu je to problém jednoduše proto, že tam žádný server nemáte. Máte jen práva do nějakého jednoho adresáře na disku a diskovou kvótu, ale ne přístup k serveru samotnému (na úrovni operačního systému).
Takže tam pak záleží na tom, co umožňuje poskytovatel.
No jo, tak to bude ono. Podpora wedosu mi řekla, že těch způsobů je několik ale zapomněli je vyjmenovat. Tak až to zas budu řešit, tak budu otravovat je a až se dostanu k vlastnímu serveru, tak Vás.
elleshar
Profil *
Zdravím, chtěl bych opakovaně spouštět php skript pomocí Plánovače úloh Windows 7. Při vytvoření nové akce vyplním cestu ke skriptu do okna Program či skript: a cestu k php.exe mám v okně Spouštět v:, ale žádný skript se nevykoná. Když nechám prázdné okno Spouštět v, tak se spustí skript v notepadu. Nevíte, v čem je problém? Díky.
Jan Tvrdík
Profil
elleshar:
Víme, vyplňuješ to blbě. „Spouštět v“ má být složka, která je zrovna v tvém případě asi nepodstatná. Do „Program či skript“ vyplň:
C:\cesta\k\php.exe C:\cesta\ke\skriptu.php
Snad to říkám dobře, zkoušet se mi to nechce.
elleshar
Profil *
Jan Tvrdík:
Díky, nakonec mi to funguje s cestou k php ve 'Spouštět v' a cestou ke skriptu v 'Přidat argumenty'. Je ale normální, že se vždycky při vykonávání na chvilku objeví okno php taskeng.exe? Je nějaká možnost, jak se toho okna zbavit?
Rfilip
Profil
Je, v vlastnostech úlohy stačí zaškrtnout checkbox "Skrytá" na kartě "Obecné"
elleshar
Profil *
elleshar:
Vyřešeno pomocí Hidden Start.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: