新四季網

apache和php的工作流程(網站放家裡隨處看電影)

2023-06-14 21:09:29 1

  使用5G網絡,隨處都可以看到放自己家裡電腦的視頻。這個功能很容易實現,不需要太多的專業知識,也不需要額外花錢。如果確實需要,最多花不到兩百塊錢買一臺舊電腦放家裡,做個網站,就能解決全部問題,FreeBSD對硬體的要求不高,沒必要買更好的電腦。當然,你也可以用虛擬機,連舊電腦都不用。下面是實現方法,作業系統是FreeBSD13.0。

一、安裝Apache。

  登錄root,輸入下面的命令安裝 apache24:

pkg install apache24

設置為在啟動計算機時啟動apache:

echo'>>/etc/rc.conf

注意上面的命令是兩個>號:>>,如果只用一個>號,會覆蓋掉文件原來的內容。

  到這裡,apache 可以正常使用了。但為了更加完善,還需要繼續安裝其他的模塊。

二、安裝php81。

輸入下面的命令:

pkg install php81-extensions

安裝apache的php模塊:

root@test:/usr/ports/www # pkg search mod_phpmod_php74-7.4.29_2 PHP Scripting Languagemod_php80-8.0.18_2 PHP Scripting Languagemod_php81-8.1.5_2 PHP Scripting Language (8.1.X branch)root@test:/usr/ports/www # pkg install mod_php81-8.1.5_2...//安裝程序提示,複製下面幾行到 httpd.conf 中 SetHandler application/x-httpd-php SetHandler application/x-httpd-php-source

複製上面提示的六行內容,粘貼到 httpd.conf 文件裡。

三、httpd.conf 配置。

  使用下面的命令,找到配置文件 httpd.conf:

cd /usr/local/etc/apache24ls httpd.conf

  為了防止在編輯過程中出錯無法恢復,先備份httpd.conf。

cp httpd.conf httpd.conf.bak

  如果要恢復原來的文件內容,複製回來覆蓋掉就行了:

cp httpd.conf.bak httpd.conf

  打開 httpd.conf。FreeBSD 有一個名為 ee 的編輯器,如果對 vi 不熟悉,可以使用 ee。

ee httpd.conf

  在編輯完成之後,按一下鍵盤左上角的鍵,會彈出菜單:

按鍵彈出菜單

選擇 a) leave editor(離開編輯器),按鍵盤的字母a鍵。

按a鍵彈出菜單

  如果要保存,按鍵盤上的字母a,選擇 a) save changes 保存更改。如果不想保存,按 b鍵,表示不保存。

  在 ee 中查找字符的方法:按鍵盤左上角的 鍵,彈出菜單後,按 f 鍵,彈出菜單後按 a 鍵,輸入要查找的內容就可以了。在 vi 中查找字符的方法是:按 / 鍵,輸入要查找的內容,反覆按 n 鍵,直到找到你需要的位置為止。

在文件中找到 DocumentRoot。

DocumentRoot "/usr/local/www/apache24/data"

在這行的上一行粘貼前面安裝 mod_php 時提示的內容。

SetHandler application/x-httpd-php SetHandler application/x-httpd-php-sourceDocumentRoot "/usr/local/www/apache24/data"

你還可以根據需要改變網站文件的存放位置。我把上面最後兩行改為:

DocumentRoot "/usr/www"

這樣日常操作起來會更方便點。我只需要輸入 cd /usr/www 就到達網站文件的根目錄了。

繼續在文件中找 ServerName,該行顯示為:

ServerName www.example.com:80

修改為:

ServerName localhost:8080

  因為我們的 80 埠在外面是訪問不了的,為了能從外網訪問,得改為其他埠。以前是可以的,以前你可以在家裡做個人網站,動態解釋域名指向你的 IP 地址。如果現在能便宜拿到固定 IP 地址,也不封 80 埠,做網站會節省很多錢。現在只能購買。

再找到DirectoryIndex,文件中是這樣的:

DirectoryIndex index.html

加上index.php

DirectoryIndex index.html index.php

  到這裡,apache 已經可以支持 php 網頁。

輸入命令啟動 apache:

apachectl start

如果啟動不了,可能是前面的配置搞錯了。用備份文件覆蓋後重新再做一次就可以了。

三、準備視頻目錄。

作為演示,我在網站根目錄下創建了一個目錄

mkdir mp4

  複製了一些視頻文件在裡面。如何從 Windows 複製視頻到網站目錄,可以看我前面寫的一篇的關於 samba 共享文件的文章,那篇文章教你如何安裝和配置 samba,實現 unix 與 Windows 的文件共享。

  在網站根目錄中創建一個文件 list.php,用於列出 mp4 目錄中的全部視頻文件名。

list.php

視頻列表2); $cnt ; } }closedir($handle);$x=sizeof($lst);$rnd=rand(0,$x-1);$sn=explode("/",$lst[$rnd]);$fname=$sn[sizeof($sn)-1];?> <source src="" /><?phpfor($i=0;$i<sizeof($lst);$i ) echo "".$lst[$i]."";?>

現在用瀏覽器打開網站,在瀏覽器地址欄中輸入這臺機器的 ip 地址和埠:

http://10.10.10.5:8080

手機uc瀏覽器截圖

到這裡,一個能播放視頻的網站就完成了。

  但有一個的問題:我們上網的動態IP位址每48小時就變一次,怎樣才能得到最新的IP位址呢?我的方法是把 IP 地址刷到自己的網站上。如果你沒有網站,可以讓電腦定期給自己發送電子郵件,附上你的 IP 地址,在需要的時候,打開郵件就可以收到IP位址了。

四、用電子郵件定時發送IP位址。

  在網站根目錄創建文件 sendip.php

創建一個文件 sendmail.sh

#!/bin/sh/usr/local/bin/php -q /usr/srun/sendip.php

指定執行屬性:

chmod a x sendmail.sh

編輯 /etc/crontab

ee /etc/crontab

加上一句:

0 7 * * * root /usr/www/sendmail.sh

如果你的 sendmail.sh 文件保存的目錄不是這個,改為相應的路徑就行了。

  這樣電腦每天早上7點就把IP位址發到你指定的郵箱裡。不花一分錢,就可以隨處看家裡放的視頻了。

  到這裡,有人可能還會擔心。網站的信息是明文的,會不會有人監視我看的是什麼?你的懷疑非常正確。根據我維護網站多年的經驗,我們通過 HTTP 傳送的明文在路上是有可能被分析過的,因為我發現單純傳送數字的速度比中文快。

  如果你需要解決明文的安全問題,可以繼續下面的操作,給apache加上ssl,使用 HTTPS 連接來看視頻。

五、讓 apache 支持 https。

cd /usr/local/etc/apache24

打開 httpd.conf 文件。

ee httpd.conf

找到

#LoadModule ssl_module libexec/apache24/mod_ssl.so

去掉前面的# 號(# 表示注釋)。

LoadModule ssl_module libexec/apache24/mod_ssl.so

找到

#Include etc/apache24/extra/httpd-ssl.conf

去掉 # 號。

Include etc/apache24/extra/httpd-ssl.conf

保存並退出。

編輯 httpd-ssl.conf 文件。

ee extra/httpd-ssl.conf

找到 SSLSessionCache,在前面加上#號。

#SSLSessionCache

將 443 全部改為8443,或者你想要的其他數字。443 是 https 服務偵聽的默認埠。

再把 ServerName 那行改為這個樣:

ServerName localhost:8443

另外,我還把

DocumentRoot "/usr/local/www/apache24/data"

改成了

DocumentRoot "/usr/www"

保存更改並退出。

在命令行中依次執行下面的命令

cd /usr/local/etc/apache24openssl req -new -nodes -out req.pem -keyout cert.key -sha256 -newkey rsa:2048

生成兩個文件用於下一步生成證書。輸入命令後,電腦出現系列提示,照樣操作即可。

Generating a RSA private key................. ....... writing new private key to 'cert.key'-----You are about to be asked to enter information that will be incorporatedinto your certificate request.What you are about to enter is what is called a Distinguished Name or a DN.There are quite a few fields but you can leave some blankFor some fields there will be a default value,If you enter '.', the field will be left blank.-----Country Name (2 letter code) [AU]:CNState or Province Name (full name) [Some-State]:GuangDongLocality Name (eg, city) []:MyCityOrganization Name (eg, company) [Internet Widgits Pty Ltd]:MyOrgOrganizational Unit Name (eg, section) []:Common Name (e.g. server FQDN or YOUR name) []:serverEmail Address []:[email protected] enter the following 'extra' attributesto be sent with your certificate requestA challenge password []:abcd1234An optional company name []:

執行完命令後,生成了 cert.key 和 req.pem 兩個文件。接下來要生成證書文件,執行以下操作:

openssl req -new -x509 -days 365 -key cert.key -out cert.crt -sha256

系統顯示和前面相似的提示,照樣操作即可。

You are about to be asked to enter information that will be incorporatedinto your certificate request.What you are about to enter is what is called a Distinguished Name or a DN.There are quite a few fields but you can leave some blankFor some fields there will be a default value,If you enter '.', the field will be left blank.-----Country Name (2 letter code) [AU]:CNState or Province Name (full name) [Some-State]:GuangDongLocality Name (eg, city) []:MyCityOrganization Name (eg, company) [Internet Widgits Pty Ltd]:MyOrgOrganizational Unit Name (eg, section) []:Common Name (e.g. server FQDN or YOUR name) []:serverEmail Address []:[email protected]

這個命令生成了證書文件。執行下面兩個命令生成給 apache 使用的證書:

cp cert.crt server.crtcp cert.key server.key

重新啟動 apache。

apachectl restart

如果上面的操作沒有問題,就可以使用 https 訪問網站了。

  打開瀏覽器,在地址欄輸入:https://10.10.10.5:8443/list.php。第一次訪問時瀏覽器會顯示警告頁面。因為我們的證書不是花錢從權威機構購買的,為了省錢,只能這樣了。

單擊「高級」,然後單擊「接受風險並繼續」就可以了。

,
同类文章
 陳冠希被曝當爸爸 老婆維密超模露點照觀看

陳冠希被曝當爸爸 老婆維密超模露點照觀看

6月12日,有網友曬出陳冠希和秦舒培為女兒舉辦百日宴的照片,陳冠希抱著女兒盡顯父愛,身旁站著秦舒培和家人。網友還曝陳冠希女兒名字是Alaia,此前秦舒培曾多次被傳懷孕及在美國生產。去年陳冠希秦舒培曾同逛嬰兒用品店;今年1月有網友偶遇秦舒培,稱其肚子凸起;今年4月有爆料稱秦舒培已誕下女兒。秦舒培是90
 日本十八禁的工口遊戲 電車之狼尾行系列你喜歡哪個?

日本十八禁的工口遊戲 電車之狼尾行系列你喜歡哪個?

工口遊戲,很多人應該都聽說過,工口遊戲其實就是日本遊戲產業裡面一些尺度較大的遊戲,我們也都了解日本的遊戲行業是很發達的,其中自然也少不了一些涉及大尺度的色情遊戲,工口遊戲就是這個一個類別的,下面讓我們來盤點幾個日本十八禁的工口遊戲。日本十八禁的工口遊戲:一、性感沙灘那個被碧撥蕩漾清可見底的海水圍繞的
 韓國十大被禁播的女團MV 尺度太大令人慾罷不能(視頻)

韓國十大被禁播的女團MV 尺度太大令人慾罷不能(視頻)

韓國的女團是一直是以性感而聞名,不僅在韓國有一大批的粉絲,就連中國和歐美國家也有一大票的粉絲,小編自然也是韓國女團粉絲大軍中的一員,看過韓國女團MV的人都知道,一向尺度是非常大的,各種誘惑性的東西看得欲罷不能,然而也正是因為尺度太大而遭到禁播,下面就讓我們一起去看看那些被禁播的MV。一、Stella
 莫菁門事件始末 因愛生恨散布大量豔照

莫菁門事件始末 因愛生恨散布大量豔照

莫菁門事件是發生在2010年廣西柳州的一次「豔照門事件」,那時候時下流行各種門事件,而廣西柳州莫菁門事件之所以能引起網絡上極大的討論,就是因為網友認為發帖者的行為已經超越了道德底線,莫菁門事件中究竟有什麼愛恨情仇呢?莫菁門事件:莫菁,女,廣西柳州人。2010年11月,一名柳州女子的不雅「豔照」在網際
 陳法蓉萬人騎是什麼意思?她演過哪些三級片?

陳法蓉萬人騎是什麼意思?她演過哪些三級片?

陳法蓉是香港著名的女藝人之一,曾經還獲得1989年香港小姐的冠軍,可以說是一位老牌的港姐代表,曾經也有演過三級片,網上曾經有一種對於她的說法是「萬人騎」,說的就是她的感情經歷十分豐富,交往過很多任的男朋友,最後都沒有一個好的結果。陳法蓉介紹:陳法蓉,1967年10月28日出生於香港,祖籍江蘇宿遷,中
 蔣英與李雙江婚外情?關係曖昧是真的嗎?

蔣英與李雙江婚外情?關係曖昧是真的嗎?

蔣英是中國最傑出的女聲樂家,中國航天之父錢學森的夫人,武俠小說大師金庸的表姐,大詩人徐志摩的表妹,看到這麼多人的名字你一定會驚嘆,而在網上曾有流傳蔣英與李雙江的婚外情事件也是引起不小的轟動,蔣英與李雙江是真的嗎,讓我們一起去揭秘事情的真相。蔣英簡介:蔣英生於1919年9月7日,浙江海寧人,中國最傑出
 《狼心狗肺》《你的淺笑》誰曲子更密鑼緊鼓

《狼心狗肺》《你的淺笑》誰曲子更密鑼緊鼓

港島妹妹和梵谷先生:天津嘉年華梁龍說:這不都坐著呢嗎我們說:坐下,牛逼安保說:菠菜賤賣。2019年10月28日 (114)|lululu0726:搖滾是音樂 聽音樂不聽音樂光聽歌詞?前戲不重要麼各位?2020年11月16日 (51)|死在柯本槍下:前面叨咕的是不是:上班了上班了他媽媽沒話說?2021
 柯凡錄音門事件 因侮辱詹姆斯而遭到封殺?

柯凡錄音門事件 因侮辱詹姆斯而遭到封殺?

柯凡,中國籃球解說員,看過NBA的朋友肯定對於他不會太陌生,柯凡搭檔過很多著名的體育解說員,但是因為在2015-2016NBA總決賽期間曝出的錄音門事件中侮辱了詹姆斯被球迷口誅筆伐,柯凡也因此被暫時停止工作反省,柯凡究竟有沒有被封殺呢?柯凡簡介:柯凡,男,北京市人,1986年3月29日出生。籃球解說
 病態三部曲背後虐心的故事 打回原形/防不勝防/十面埋伏

病態三部曲背後虐心的故事 打回原形/防不勝防/十面埋伏

黃偉文是香港樂壇著名的作詞人,他給很多音樂人都寫過歌詞也都是耳熟能詳,比如說《可惜我是水瓶座》《浮誇》《下一站天后》《喜帖街》等等,他的歌能讓人產生非常多的共鳴,在病態三部曲中更是引起無數人對於愛情的遺憾,他的病態三部曲分別是哪三首呢?病態三部曲:《打回原形》《打回原形》講愛之卑微。在愛情裡面,人難
 《愛你這樣傻》與《你從未說過愛我》哪首變幻莫測

《愛你這樣傻》與《你從未說過愛我》哪首變幻莫測

南極不季寞:90後聽這種歌的還有幾個2015年9月20日 (6017)|Ea-bon:真系好聽無得頂啊,睇下幾多人卑贊!!12015年12月2日 (2092)|麥芽先生:唱歌的也傻聽歌的也傻2015年3月27日 (867)|六級詞彙小能手:22歲的阿姨沒有談過戀愛但是喜歡著一個人。2017年10月1