SlideShare una empresa de Scribd logo
1 de 37
Apache 2.3
mod_auth_form + mod_session
             <koura-h@klab.jp>
• Apache
•
• Apache 2.2
• Apache 2.3
•      (           )
•
•   MacOSX Linux
•
•
Apache

•        2.2   (=2.2.14 at 2010/3/5)

•                 2.3                   (2.3.5-
    alpha and svn trunk)
    • stable                2.4   3.0
~Apache 2.2 (   )
(          )

login

                     home




        logout
•    CGI(Web   )


•
•
•   CGI
•
    •
    •
•       ID
(          )

login

                     home




        logout
•
(          )

login

                     home




        logout
•

    •

    •
(          )

login

                     home




        logout
Apache 2.3~
Browser   Apache(httpd)
Browser                   Apache(httpd)




• 401 Authorization Required
•
  •
mod_auth_form                   …

   Browser      Apache(httpd)
mod_auth_form                             …

     Browser              Apache(httpd)




• 301 Moved Permanently
•
(          )

login

                     home




        logout
• Apache                     -
    mod_auth_form + mod_session
•
    • handler
    • check_authn (or check_user_id)
Apache
• HTTP           Apache


    •    parse
                   etc...

•
•
handler

•         HTTP
          HTTP



• CGI   Web
check_authn

•       HTTP




• 2.3
               (check_user_id   )
mod_auth_form

•
    • handler
    • check_authn
•
    • check_authn
httpd.conf
<Location /doauth>
  SetHandler form-login-handler
  AuthFormLoginRequiredLocation /login.html
  AuthFormLoginSuccessLocation /mypage/
  AuthFormProvider dbd
  AuthDBDUserPWQuery "SELECT password FROM user
WHERE user = %s"
  AuthType form
  AuthName realm
  Session On
  SessionDBDCookieName session path=/
</Location>

<Location /dologout>
  SetHandler form-logout-handler
  AuthFormLogoutLocation /logout.html
  AuthName realm
  Session On
  SessionDBDCookieName session path=/
</Location>
httpd.conf
•                = /doauth

•                  = /dologout

    • SetHandler
    • AuthFormLoginSuccessLocation
    • AuthFormLoginRequiredLocation
    • AuthFormLogoutLocation
httpd.conf

<LocationMatch "/mypage/*">
  AuthFormProvider dbd
  AuthDBDUserPWQuery "SELECT password FROM user
WHERE user = %s"
  AuthFormLoginRequiredLocation /login.html
  AuthType form
  AuthName realm
  Session On
  SessionEnv On
  SessionDBDCookieName session path=/
</LocationMatch>
(ACL)

• AuthFormProvider
 •         DB

 •            LDAP

• htpasswd
(          )

login

                     home




        logout
• CGI/Web
•         HTTP_SESSION
    REMOTE_USER
•           ID

    •
•              HTTP_SESSION


    • mod_session_crypto
•         ID

    •
•                 DB


    • Key-Value
...

• MPM
• mod_lua
• FastCGI        (mod_proxy_fcgi &
  fcgistarter)
• etc...
DSAS
20100305

Más contenido relacionado

La actualidad más candente

Different waysconnect
Different waysconnectDifferent waysconnect
Different waysconnect
myrajendra
 

La actualidad más candente (10)

Intro to Apache Shiro
Intro to Apache ShiroIntro to Apache Shiro
Intro to Apache Shiro
 
Toutch Jquery Mobile
Toutch Jquery MobileToutch Jquery Mobile
Toutch Jquery Mobile
 
Go Web Development
Go Web DevelopmentGo Web Development
Go Web Development
 
Azure F#unctions
Azure F#unctionsAzure F#unctions
Azure F#unctions
 
Better Selenium Tests with Geb - Selenium Conf 2014
Better Selenium Tests with Geb - Selenium Conf 2014Better Selenium Tests with Geb - Selenium Conf 2014
Better Selenium Tests with Geb - Selenium Conf 2014
 
Introduction to the new official C# Driver developed by 10gen
Introduction to the new official C# Driver developed by 10genIntroduction to the new official C# Driver developed by 10gen
Introduction to the new official C# Driver developed by 10gen
 
Pyramid REST
Pyramid RESTPyramid REST
Pyramid REST
 
Efficient DBA: Gain Time by Reducing Command-Line Keystrokes
Efficient DBA: Gain Time by Reducing Command-Line KeystrokesEfficient DBA: Gain Time by Reducing Command-Line Keystrokes
Efficient DBA: Gain Time by Reducing Command-Line Keystrokes
 
Different waysconnect
Different waysconnectDifferent waysconnect
Different waysconnect
 
PLAT-15 Forms Config, Customization, and Extension
PLAT-15 Forms Config, Customization, and ExtensionPLAT-15 Forms Config, Customization, and Extension
PLAT-15 Forms Config, Customization, and Extension
 

Destacado (6)

Dreamweaver
DreamweaverDreamweaver
Dreamweaver
 
Creating a form in Dreamweaver
Creating a form in DreamweaverCreating a form in Dreamweaver
Creating a form in Dreamweaver
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009
 
Can ho hoa binh green park
Can ho hoa binh green parkCan ho hoa binh green park
Can ho hoa binh green park
 
Dynamic Web Pages Ch 4 V1.0
Dynamic Web Pages Ch 4 V1.0Dynamic Web Pages Ch 4 V1.0
Dynamic Web Pages Ch 4 V1.0
 
Web Design 101
Web Design 101Web Design 101
Web Design 101
 

Similar a 20100305

GitBucket: The perfect Github clone by Scala
GitBucket: The perfect Github clone by ScalaGitBucket: The perfect Github clone by Scala
GitBucket: The perfect Github clone by Scala
takezoe
 

Similar a 20100305 (20)

Apache mod authまわりとか
Apache mod authまわりとかApache mod authまわりとか
Apache mod authまわりとか
 
PHP記帳網頁教材(第一頁是空白的)
PHP記帳網頁教材(第一頁是空白的)PHP記帳網頁教材(第一頁是空白的)
PHP記帳網頁教材(第一頁是空白的)
 
Kiosk / PHP
Kiosk / PHP Kiosk / PHP
Kiosk / PHP
 
Rails Security
Rails SecurityRails Security
Rails Security
 
Serverless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic appsServerless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic apps
 
Hacking Wordpress Plugins
Hacking Wordpress PluginsHacking Wordpress Plugins
Hacking Wordpress Plugins
 
Some OAuth love
Some OAuth loveSome OAuth love
Some OAuth love
 
REST API Security: OAuth 2.0, JWTs, and More!
REST API Security: OAuth 2.0, JWTs, and More!REST API Security: OAuth 2.0, JWTs, and More!
REST API Security: OAuth 2.0, JWTs, and More!
 
GitBucket: The perfect Github clone by Scala
GitBucket: The perfect Github clone by ScalaGitBucket: The perfect Github clone by Scala
GitBucket: The perfect Github clone by Scala
 
Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure M...
Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure M...Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure M...
Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure M...
 
JavaOne 2014 - Securing RESTful Resources with OAuth2
JavaOne 2014 - Securing RESTful Resources with OAuth2JavaOne 2014 - Securing RESTful Resources with OAuth2
JavaOne 2014 - Securing RESTful Resources with OAuth2
 
Modx Evo Basic Cheatsheet 1 3
Modx Evo Basic Cheatsheet 1 3Modx Evo Basic Cheatsheet 1 3
Modx Evo Basic Cheatsheet 1 3
 
Super simple application security with Apache Shiro
Super simple application security with Apache ShiroSuper simple application security with Apache Shiro
Super simple application security with Apache Shiro
 
Authentication in microservice systems - fsto 2017
Authentication in microservice systems - fsto 2017Authentication in microservice systems - fsto 2017
Authentication in microservice systems - fsto 2017
 
15-auth-session-mgmt.ppt
15-auth-session-mgmt.ppt15-auth-session-mgmt.ppt
15-auth-session-mgmt.ppt
 
Persona: in your browsers, killing your passwords
Persona: in your browsers, killing your passwordsPersona: in your browsers, killing your passwords
Persona: in your browsers, killing your passwords
 
Apache Server Tutorial
Apache Server TutorialApache Server Tutorial
Apache Server Tutorial
 
Chrome Devtools Protocol via Selenium/Appium (English)
Chrome Devtools Protocol via Selenium/Appium (English)Chrome Devtools Protocol via Selenium/Appium (English)
Chrome Devtools Protocol via Selenium/Appium (English)
 
下吧开发总结
下吧开发总结下吧开发总结
下吧开发总结
 
Secure Coding for NodeJS
Secure Coding for NodeJSSecure Coding for NodeJS
Secure Coding for NodeJS
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 

20100305

  • 1. Apache 2.3 mod_auth_form + mod_session <koura-h@klab.jp>
  • 2. • Apache • • Apache 2.2 • Apache 2.3
  • 3. ( ) • • MacOSX Linux • •
  • 4. Apache • 2.2 (=2.2.14 at 2010/3/5) • 2.3 (2.3.5- alpha and svn trunk) • stable 2.4 3.0
  • 6. ( ) login home logout
  • 7. CGI(Web ) • • • CGI
  • 8. • • • ID
  • 9. ( ) login home logout
  • 10.
  • 11. ( ) login home logout
  • 12. • •
  • 13. ( ) login home logout
  • 15. Browser Apache(httpd)
  • 16. Browser Apache(httpd) • 401 Authorization Required • •
  • 17. mod_auth_form … Browser Apache(httpd)
  • 18. mod_auth_form … Browser Apache(httpd) • 301 Moved Permanently •
  • 19. ( ) login home logout
  • 20. • Apache - mod_auth_form + mod_session • • handler • check_authn (or check_user_id)
  • 21. Apache • HTTP Apache • parse etc... • •
  • 22.
  • 23. handler • HTTP HTTP • CGI Web
  • 24. check_authn • HTTP • 2.3 (check_user_id )
  • 25. mod_auth_form • • handler • check_authn • • check_authn
  • 26.
  • 27. httpd.conf <Location /doauth>   SetHandler form-login-handler   AuthFormLoginRequiredLocation /login.html   AuthFormLoginSuccessLocation /mypage/   AuthFormProvider dbd   AuthDBDUserPWQuery "SELECT password FROM user WHERE user = %s"   AuthType form   AuthName realm   Session On   SessionDBDCookieName session path=/ </Location> <Location /dologout>   SetHandler form-logout-handler   AuthFormLogoutLocation /logout.html   AuthName realm   Session On   SessionDBDCookieName session path=/ </Location>
  • 28. httpd.conf • = /doauth • = /dologout • SetHandler • AuthFormLoginSuccessLocation • AuthFormLoginRequiredLocation • AuthFormLogoutLocation
  • 29. httpd.conf <LocationMatch "/mypage/*">   AuthFormProvider dbd   AuthDBDUserPWQuery "SELECT password FROM user WHERE user = %s"   AuthFormLoginRequiredLocation /login.html   AuthType form   AuthName realm   Session On SessionEnv On   SessionDBDCookieName session path=/ </LocationMatch>
  • 30. (ACL) • AuthFormProvider • DB • LDAP • htpasswd
  • 31. ( ) login home logout
  • 32. • CGI/Web • HTTP_SESSION REMOTE_USER • ID •
  • 33. HTTP_SESSION • mod_session_crypto • ID •
  • 34. DB • Key-Value
  • 35. ... • MPM • mod_lua • FastCGI (mod_proxy_fcgi & fcgistarter) • etc...
  • 36. DSAS

Notas del editor

  1. ssh midlab.st.wakwak.ne.jp&amp;#x3057;&amp;#x3066;&amp;#x3001;8080&amp;#x756A;&amp;#x3078;&amp;#x306E;port forwarding&amp;#x3057;&amp;#x3066;&amp;#x304A;&amp;#x304F;&amp;#x3053;&amp;#x3068;&amp;#x3002; Safari&amp;#x306E;proxy&amp;#x8A2D;&amp;#x5B9A;&amp;#x3092;8080&amp;#x3078;&amp;#x3057;&amp;#x3066;&amp;#x304A;&amp;#x304F;&amp;#x3053;&amp;#x3068;&amp;#x3002;
  2. Apache&amp;#x3068;&amp;#x3044;&amp;#x3048;&amp;#x3070;&amp;#x3001;Web&amp;#x30B5;&amp;#x30FC;&amp;#x30D3;&amp;#x30B9;&amp;#x3092;&amp;#x69CB;&amp;#x7BC9;&amp;#x3059;&amp;#x308B;&amp;#x4E0A;&amp;#x3067;&amp;#x3060;&amp;#x3044;&amp;#x305F;&amp;#x3044;&amp;#x3069;&amp;#x3053;&amp;#x304B;&amp;#x3067;&amp;#x5FC5;&amp;#x305A;&amp;#x304A;&amp;#x4E16;&amp;#x8A71;&amp;#x306B;&amp;#x306A;&amp;#x308B;&amp;#x3067;&amp;#x3042;&amp;#x308D;&amp;#x3046;&amp;#x3001;HTTP&amp;#x30B5;&amp;#x30FC;&amp;#x30D0;&amp;#x306E;&amp;#x30C7;&amp;#x30D5;&amp;#x30A1;&amp;#x30AF;&amp;#x30C8;&amp;#x30B9;&amp;#x30BF;&amp;#x30F3;&amp;#x30C0;&amp;#x30FC;&amp;#x30C9;&amp;#x3068;&amp;#x3057;&amp;#x3066;&amp;#x5E45;&amp;#x5E83;&amp;#x304F;&amp;#x5B9A;&amp;#x7740;&amp;#x3057;&amp;#x305F;&amp;#x30BD;&amp;#x30D5;&amp;#x30C8;&amp;#x30A6;&amp;#x30A7;&amp;#x30A2;&amp;#x3060;&amp;#x3068;&amp;#x601D;&amp;#x3044;&amp;#x307E;&amp;#x3059;&amp;#x3002;KLab&amp;#x3067;&amp;#x3082;&amp;#x5404;&amp;#x6240;&amp;#x3067;&amp;#x904B;&amp;#x7528;&amp;#x3057;&amp;#x3066;&amp;#x304A;&amp;#x4E16;&amp;#x8A71;&amp;#x306B;&amp;#x306A;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x307E;&amp;#x3059;&amp;#x3002; &amp;#x73FE;&amp;#x5728;&amp;#x3001;&amp;#x30D0;&amp;#x30FC;&amp;#x30B8;&amp;#x30E7;&amp;#x30F3;&amp;#x306F;2.2&amp;#x7CFB;&amp;#x304C;&amp;#x5B89;&amp;#x5B9A;&amp;#x7248;(stable branch)&amp;#x3068;&amp;#x306A;&amp;#x3063;&amp;#x3066;&amp;#x304A;&amp;#x308A;&amp;#x307E;&amp;#x3059;&amp;#x304C;&amp;#x3001;&amp;#x958B;&amp;#x767A;&amp;#x7248;&amp;#x3067;&amp;#x3042;&amp;#x308B;2.3&amp;#x7CFB;&amp;#x304C;&amp;#x65E2;&amp;#x306B;&amp;#x4E26;&amp;#x884C;&amp;#x3057;&amp;#x3066;&amp;#x516C;&amp;#x958B;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x306E;&amp;#x3092;&amp;#x3054;&amp;#x5B58;&amp;#x77E5;&amp;#x3067;&amp;#x3057;&amp;#x3087;&amp;#x3046;&amp;#x304B;&amp;#x3002;&amp;#x65B0;&amp;#x3057;&amp;#x3044;&amp;#x6A5F;&amp;#x80FD;&amp;#x3084;&amp;#x6280;&amp;#x8853;&amp;#x3092;&amp;#x53D6;&amp;#x308A;&amp;#x5165;&amp;#x308C;&amp;#x3066;&amp;#x884C;&amp;#x304F;&amp;#x70BA;&amp;#x306B;2.2&amp;#x7CFB;&amp;#x3068;&amp;#x306E;&amp;#x9593;&amp;#x306E;&amp;#x4E92;&amp;#x63DB;&amp;#x6027;&amp;#x3092;&amp;#x6642;&amp;#x306B;&amp;#x72A0;&amp;#x7272;&amp;#x306B;&amp;#x3057;&amp;#x3064;&amp;#x3064;&amp;#x3001;&amp;#x69D8;&amp;#x3005;&amp;#x306A;&amp;#x30C1;&amp;#x30E3;&amp;#x30EC;&amp;#x30F3;&amp;#x30B8;&amp;#x304C;&amp;#x884C;&amp;#x308F;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x308F;&amp;#x3051;&amp;#x3067;&amp;#x3059;&amp;#x3002;&amp;#x5C06;&amp;#x6765;&amp;#x7684;&amp;#x306B;&amp;#x306F;&amp;#x3053;&amp;#x306E;&amp;#x30D0;&amp;#x30FC;&amp;#x30B8;&amp;#x30E7;&amp;#x30F3;&amp;#x304C;2.4&amp;#x7CFB;&amp;#x3068;&amp;#x306A;&amp;#x3063;&amp;#x3066;&amp;#x65B0;&amp;#x3057;&amp;#x3044;&amp;#x5B89;&amp;#x5B9A;&amp;#x7248;&amp;#x3068;&amp;#x3057;&amp;#x3066;&amp;#x63D0;&amp;#x4F9B;&amp;#x3055;&amp;#x308C;&amp;#x308B;&amp;#x3053;&amp;#x3068;&amp;#x306B;&amp;#x306A;&amp;#x308B;&amp;#x3067;&amp;#x3057;&amp;#x3087;&amp;#x3046;&amp;#x3002;
  3. &amp;#x305F;&amp;#x3068;&amp;#x3048;&amp;#x3070;&amp;#x3053;&amp;#x3093;&amp;#x306A;&amp;#x30B5;&amp;#x30A4;&amp;#x30C8;&amp;#x69CB;&amp;#x7BC9;&amp;#x3001;&amp;#x30DA;&amp;#x30FC;&amp;#x30B8;&amp;#x9077;&amp;#x79FB;&amp;#x304C;&amp;#x3053;&amp;#x306E;&amp;#x3088;&amp;#x3046;&amp;#x306B;&amp;#x5B9A;&amp;#x7FA9;&amp;#x3055;&amp;#x308C;&amp;#x308B;&amp;#x3068;&amp;#x3057;&amp;#x307E;&amp;#x3057;&amp;#x3087;&amp;#x3046;&amp;#x3002;&amp;#x7DD1;&amp;#x8272;&amp;#x306E;&amp;#x304C;HTML&amp;#x30DA;&amp;#x30FC;&amp;#x30B8;&amp;#x3001;&amp;#x70B9;&amp;#x7DDA;&amp;#x306E;&amp;#x3082;&amp;#x306E;&amp;#x304C;&amp;#x30ED;&amp;#x30B0;&amp;#x30A4;&amp;#x30F3;&amp;#x30FB;&amp;#x30ED;&amp;#x30B0;&amp;#x30A2;&amp;#x30A6;&amp;#x30C8;&amp;#x51E6;&amp;#x7406;&amp;#x3092;&amp;#x884C;&amp;#x3046;&amp;#x3082;&amp;#x306E;&amp;#x3067;&amp;#x3059;&amp;#x3002;
  4. &amp;#xA0;
  5. &amp;#xA0;
  6. &amp;#xA0;
  7. &amp;#x30DA;&amp;#x30FC;&amp;#x30B8;&amp;#x623B;&amp;#x3057;&amp;#x3066;&amp;#x30C7;&amp;#x30A3;&amp;#x30EC;&amp;#x30AF;&amp;#x30C6;&amp;#x30A3;&amp;#x30D6;&amp;#x898B;&amp;#x305B;&amp;#x306A;&amp;#x304C;&amp;#x3089;&amp;#x8AAC;&amp;#x660E;