Today is the 1000th day that
pinkaccordions.homelinux.org
at sheevaplug is online.
During that period the only problem experienced was Sheevaplug's PSU breakdown.
Cf. Kopia zapasowa karty SDHC, rsync i problemy and Konfigurowanie Apacha (in Polish)
Minął rok odkąd zarejestrowałem w www.dyndns.com
adres pinkaccordions.homelinux.org
(dokładnie pierwszy wpis w access.log
ma datę 23 maja 2010 r.).
Działa doskonale....
Przy okazji: dzisiaj przeniosłem anemometr z płotu na dach bloku. Prędkości wiatru od razu wzrosły...
Dziś przypadkowo odkryłem dzięki korespondencji z kol. Rafim, iż serwis DynDNS, z którego usług korzystam zmienił reguły gry, a mianowicie większość fajnych domen, które były dostępne za free jest teraz płatna, w tym ta której ja używam tj. pinkaccordions.homelinux.org. DynDysy twierdzą, w oświadczeniu z okazji zmiany, że dopóki konto nie wygaśnie to można je używać i go nie skasują. A może wygasnąć wtedy gdy przez 30 dni nie będzie używane. Czym prędzej zatem zmieniłem też ustawienia w Tomato Basic → DDNS → Auto refresh every 28 days na every 3 dni.
W sumie zawsze tak było, że mogli skasować po 30 dniach nieużywania, ale jakoś na to nie zwracałem uwagi. Ponieważ w UPC adres IP zmienia się bardzo rzadko, 28 dni to prawie miesiąc więc chyba lepiej częściej manifestować, że się korzysta.
Jak by skasowali to też nie byłoby tragedii, raptem 15 USD/rok. What comes free has no guarantee jak mówią...
Rozpoczynam od założenia w serwisie dyndns.org
konta.
Potem przechodzę do My Services→Host services,
wybieram nazwę hosta (w moim przypadku pinkaccordions
) i domeny
(homelinux.org
).
Typ usługi: Host with IP address
. Resztę pól
można zostawić niewypełnione.
Darmowe konto pozwala na przydzielenie 5 adresów...
Teraz w menu Tomato klikam w Basic→DDNS. Jako service
wybieram DynDNS -- static, Username/Password to dane z rejestracji
w serwisie DynDNS, hostname to z kolei wybrana przez nas
nazwa hosta, tj. w moim przypadku pinkaccordions.homelinux.org
.
Więcej niczego nie trzeba wpisywać wystarczą dane domyślne.
Można ustawić w ten sposób dwa adresy...
Por też notatki tutaj.
Pozostaje wreszcie uruchamienie usługi port forwarding na routerze z działającym Tomato. Jest to bardzo proste i sprowadza się do wypełnienia pól Proto, Ext Ports, Int Address oraz opcjonalnie Description (por. ekran obok).
Instalacja serwera apache oraz php w systemie Debian Lenny.
apt-get install apache2 apache2-mpm-prefork apache2-utils apache2.2-common apt-get install php5 libapache2-mod-php5 php5-common php5-curl apt-get install php5-dev php5-gd php5-imagick php5-mcrypt php5-memcache php5-mhash \ php5-mysql php5-pspell php5-snmp php5-sqlite php5-xmlrpc php5-xsl
W pliku /etc/apache2/ports.conf
umieszczam komentarz
przed dyrektywą NameVirtualHost
:
#NameVirtualHost *:80
Zaś powyższą dyrektywę umieszczam w /etc/apache2/httpd.conf
.
Konfiguracja wirtualnego hosta; plik /etc/apache2/sites-available/pinkaccordions
powstaje przez skopiowanie pliku domyślnego:
cd /etc/apache2/sites-available/ ; cp default pinkaccordions
Następnie plik modyfikuję dopisując
ServerName
i ServerAlias
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName pinkaccordions.homelinux.org ServerAlias pinkaccordions.homelinux.org DocumentRoot /var/www_pinkaccordions/ <!-- dalej w zasadzie niezmienione --> </VirtualHost>
Teraz:
cd /etc/apache2/sites-enabled && ln -s ../sites-available/pinkaccordions pinkaccordions
To samo dla drugiego i ewentualnie kolejnych hostów. Innych plików
za wyjątkiem opisanych wyżej httpd.conf
,
ports.conf
oraz plików z katalogu
./sites-available/
i linków z katalogu ./sites-enabled/
nie ruszam. Teraz
/etc/init.d/apache2 restart # albo apache2ctl graceful
No i powinno działać...
Dopisane 15 września 2010:
Aby logrotate
nie usuwał najstarszego przechowywanego pliku
modyfikuję /etc/logrotate.d/apache2
i dodając stosowane prerotate...endscript
:
sharedscripts prerotate if [ -f "/path2logs/access.log.52.gz" ] ; then cp /path2logs/access.log.52.gz /path2archive/access.`date +%Y%m%d`.log.gz ; fi if [ -f "/path2logs/access.fabians.log.52.gz" ] ; then cp /path2logs/access.log.52.gz /path2logs/access.`date +%Y%m%d`.log.gz ; fi endscript
Teraz (mam nadzieję), plik access.log.52.gz
przed skasowaniem zostanie
skopiowany w inne miejsce i ocaleje. Pewnie można by prościej, przykładowo
brutalnie wpisując po prostu rotate 156
.